from hysdata.models import Query
import pandas as pd

def stock_list(listed_state: str = None, fields: str = None, **kwargs)->Query:
    """
    记录A股上市、退市股票交易代码、股票名称、上市状态等信息；
    https://udata.hs.net/datas/202/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    listed_state  String  否      上市状态  默认值为1，1-上市，2-终止;
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型      长度  说明      备注
    -------------  ------  ------  --------  ------
    secu_code      String      20  证券代码
    hs_code        String      20  HS代码
    secu_abbr      String      20  证券简称
    chi_name       String      40  中文名称
    secu_market    String      20  证券市场
    listed_state   String      20  上市状态
    listed_sector  String      20  上市板块
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'hs_code': 'str', 'secu_abbr': 'str', 'chi_name': 'str', 'secu_market': 'str', 'listed_state': 'str', 'listed_sector': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'hs_code': 'HS代码', 'secu_abbr': '证券简称', 'chi_name': '中文名称', 'secu_market': '证券市场', 'listed_state': '上市状态', 'listed_sector': '上市板块'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="stock_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def trading_calendar(secu_market: str = None, if_trading_day: str = None, if_week_end: str = None, if_month_end: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    交易日信息，包括每个日期是否是交易日，是否周、月最后一个交易日；
    https://udata.hs.net/datas/200/
    <参数>
    名称            类型    必填    说明                备注
    --------------  ------  ------  ------------------  ----------------------------------------------
    secu_market     String  否      证券市场            83-沪深证券交易所；72-香港联交所
    if_trading_day  String  否      是否交易日          默认取全部，1-是，2-否
    if_week_end     String  否      是否本周最后交易日  默认取全部，1-是，2-否
    if_month_end    String  否      是否月末            默认取全部，1-是，2-否
    start_date      String  否      开始日期            默认取值为去年今日
    end_date        String  否      截止日期            默认取值为当前日期
    fields          String  否      字段集合            默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名          类型      长度  说明                备注
    --------------  ------  ------  ------------------  ------
    trading_date    String      20  日期
    if_trading_day  String       1  是否交易日
    secu_market     String      20  证券市场
    if_week_end     String       1  是否本周最后交易日
    if_month_end    String       1  是否月末
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trading_date': 'str', 'if_trading_day': 'str', 'secu_market': 'str', 'if_week_end': 'str', 'if_month_end': 'str'}
    column_name_dict = {'trading_date': '日期', 'if_trading_day': '是否交易日', 'secu_market': '证券市场', 'if_week_end': '是否本周最后交易日', 'if_month_end': '是否月末'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="trading_calendar", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def ipo_list(start_date: str = None, secu_market: str = None, listed_sector: str = None, fields: str = None, **kwargs)->Query:
    """
    提供已上市新股代码，名称，发行数量、申购和配售等新股信息；
    https://udata.hs.net/datas/267/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ----------------------------------------------
    start_date     String  否      开始日期  默认取值为系统日期
    secu_market    String  否      上市市场  默认全部；83-上交所，90-深交所
    listed_sector  String  否      上市板块  参默认全部；
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型       长度  说明                      备注
    ----------------------  -------  ------  ------------------------  ------------------------------------------------
    prod_name               String    20     产品名称
    prod_code               String    20     产品代码
    secu_code               String    20     证券代码
    secu_market             String    10     证券市场                  83-上海证券交易所，90-深圳证券交易所
    secu_abbr               String    20     证券简称
    prospectus_date         String    20     发行日期
    listed_date             String    20     上市日期
    issue_price             Float     16.4   发行价(元)
    diluted_pe_ratio        Float     16     发行市盈率(全面摊薄)
    allot_max               Float     16.2   申购上限(股)
    lot_rate_online         Integer   16     发行中签率
    worth_value             Float     16.2   市值
    issue_vol               Float     16.2   发行数量(股)
    indurstry               String    40     所属行业                  行业分类（证监会）
    naps                    Float     16.4   每股净资产(元)            发行前每股净资产(元)
    issue_amount            Integer   16     发行数量                  计划发行总量(股)
    lucky_rate              Float     16.15  配售中签率
    valid_apply_vol_online  Float     16.2   网上发行有效申购总量(股)
    valid_apply_num_online  Integer   10     网上发行有效申购户数(户)
    valid_apply_vol_lp      Float     16.2   配售有效申购总量(股)
    valid_apply_num_lp      Integer   10     配售有效申购户数(户)
    over_subs_times_online  Float     16.6   网上发行超额认购倍数(倍)
    over_subs_times_lp      Float     16.6   配售超额认购倍数(倍)
    listed_sector           Float     10     上市板块                  1-主板，2-中小企业板，4-其他，6-创业板，7-科创板
    secu_category           Float     10     证券类型
    allocation_date         String    20     中签号公布日
    esti_allot_max          Float     16     预估申购上限
    allot_min               Float     10     申购下限
    esti_issue_price        Float     16     预估发行价
    naps_after              Float     16.4   每股净资产(元)            发行后每股净资产(元)
    issue_system_type       Integer    2     发行制度类型              1-核准制，2-注册制
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_name': 'str', 'prod_code': 'str', 'secu_code': 'str', 'secu_market': 'str', 'secu_abbr': 'str', 'prospectus_date': 'str', 'listed_date': 'str', 'issue_price': 'float', 'diluted_pe_ratio': 'float', 'allot_max': 'float', 'lot_rate_online': 'int', 'worth_value': 'float', 'issue_vol': 'float', 'indurstry': 'str', 'naps': 'float', 'issue_amount': 'int', 'lucky_rate': 'float', 'valid_apply_vol_online': 'float', 'valid_apply_num_online': 'int', 'valid_apply_vol_lp': 'float', 'valid_apply_num_lp': 'int', 'over_subs_times_online': 'float', 'over_subs_times_lp': 'float', 'listed_sector': 'float', 'secu_category': 'float', 'allocation_date': 'str', 'esti_allot_max': 'float', 'allot_min': 'float', 'esti_issue_price': 'float', 'naps_after': 'float', 'issue_system_type': 'int'}
    column_name_dict = {'prod_name': '产品名称', 'prod_code': '产品代码', 'secu_code': '证券代码', 'secu_market': '证券市场', 'secu_abbr': '证券简称', 'prospectus_date': '发行日期', 'listed_date': '上市日期', 'issue_price': '发行价(元)', 'diluted_pe_ratio': '发行市盈率(全面摊薄)', 'allot_max': '申购上限(股)', 'lot_rate_online': '发行中签率', 'worth_value': '市值', 'issue_vol': '发行数量(股)', 'indurstry': '所属行业', 'naps': '每股净资产(元)', 'issue_amount': '发行数量', 'lucky_rate': '配售中签率', 'valid_apply_vol_online': '网上发行有效申购总量(股)', 'valid_apply_num_online': '网上发行有效申购户数(户)', 'valid_apply_vol_lp': '配售有效申购总量(股)', 'valid_apply_num_lp': '配售有效申购户数(户)', 'over_subs_times_online': '网上发行超额认购倍数(倍)', 'over_subs_times_lp': '配售超额认购倍数(倍)', 'listed_sector': '上市板块', 'secu_category': '证券类型', 'allocation_date': '中签号公布日', 'esti_allot_max': '预估申购上限', 'allot_min': '申购下限', 'esti_issue_price': '预估发行价', 'naps_after': '每股净资产(元)', 'issue_system_type': '发行制度类型'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="ipo_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def company_profile(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取公司的基本信息，包含公司名称、注册信息、公司属性、所在城市、联系电话、实际控制人等内容；
    https://udata.hs.net/datas/268/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      股票代码  默认值为：600570.SH
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型       长度  说明              备注
    --------------------------  -------  ------  ----------------  ------
    prod_code                   String      200  股票代码
    chi_name                    String      200  公司中文名称
    eng_name                    String      200  公司英文名称
    company_pro                 String      200  公司属性
    establishment_date          String      200  成立日期
    legal_repr                  String      200  法定代表人
    city_code                   String      200  城市
    reg_addr                    String      200  公司注册地址
    officeaddress               String      200  公司办公地址
    officezip                   String      200  邮编
    tel                         String      200  联系电话
    email                       String      200  电子邮件
    website                     String      200  公司网址
    secu_affairs_repr           String      200  公司披露人
    business_reg_number         String      200  工商登记号
    regcapital                  Integer     200  注册资本
    state                       String      200  省份
    fax                         String      200  传真
    uniform_social_credit_code  String      200  统一社会信用代码
    employee_sum                Integer      10  员工总数
    controller_name             String      200  实际控制人
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'chi_name': 'str', 'eng_name': 'str', 'company_pro': 'str', 'establishment_date': 'str', 'legal_repr': 'str', 'city_code': 'str', 'reg_addr': 'str', 'officeaddress': 'str', 'officezip': 'str', 'tel': 'str', 'email': 'str', 'website': 'str', 'secu_affairs_repr': 'str', 'business_reg_number': 'str', 'regcapital': 'int', 'state': 'str', 'fax': 'str', 'uniform_social_credit_code': 'str', 'employee_sum': 'int', 'controller_name': 'str'}
    column_name_dict = {'prod_code': '股票代码', 'chi_name': '公司中文名称', 'eng_name': '公司英文名称', 'company_pro': '公司属性', 'establishment_date': '成立日期', 'legal_repr': '法定代表人', 'city_code': '城市', 'reg_addr': '公司注册地址', 'officeaddress': '公司办公地址', 'officezip': '邮编', 'tel': '联系电话', 'email': '电子邮件', 'website': '公司网址', 'secu_affairs_repr': '公司披露人', 'business_reg_number': '工商登记号', 'regcapital': '注册资本', 'state': '省份', 'fax': '传真', 'uniform_social_credit_code': '统一社会信用代码', 'employee_sum': '员工总数', 'controller_name': '实际控制人'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="company_profile", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_Info(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取股票的基本信息，包含股票交易代码、股票简称、上市时间、上市状态、所属概念板块等信息；
    https://udata.hs.net/datas/307/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证券代码  默认取值为：600570.SH
    trading_date  String  否      交易日期  用于统计该日期股票所属的概念板块详情
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型       长度  说明            备注
    -------------  -------  ------  --------------  ------
    prod_code      String    200    股票代码
    secu_abbr      String    200    股票简称
    eng_name_abbr  String    200    股票英文名称
    list_date      String    200    上市时间
    secu_market    String    200    上市地点
    par_value      Integer    12.6  股票面值
    isin_code      String    200    ISIN代码
    hstock_code    String    200    同公司H股代码
    hshare_abbr    String    200    同公司H股简称
    bstock_code    String    200    同公司B股代码
    bshare_abbr    String    200    同公司B股简称
    secu_code      String    200    证券编码
    listed_sector  String    200    上市板块
    concept_board  String   1000    所属概念板块
    change_type    String    200    证券存续状态
    sh_hk_flag     Integer     1    是否沪港通标的
    sz_hk_flag     String      1    是否深港通标的
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'secu_abbr': 'str', 'eng_name_abbr': 'str', 'list_date': 'str', 'secu_market': 'str', 'par_value': 'int', 'isin_code': 'str', 'hstock_code': 'str', 'hshare_abbr': 'str', 'bstock_code': 'str', 'bshare_abbr': 'str', 'secu_code': 'str', 'listed_sector': 'str', 'concept_board': 'str', 'change_type': 'str', 'sh_hk_flag': 'int', 'sz_hk_flag': 'str'}
    column_name_dict = {'prod_code': '股票代码', 'secu_abbr': '股票简称', 'eng_name_abbr': '股票英文名称', 'list_date': '上市时间', 'secu_market': '上市地点', 'par_value': '股票面值', 'isin_code': 'ISIN代码', 'hstock_code': '同公司H股代码', 'hshare_abbr': '同公司H股简称', 'bstock_code': '同公司B股代码', 'bshare_abbr': '同公司B股简称', 'secu_code': '证券编码', 'listed_sector': '上市板块', 'concept_board': '所属概念板块', 'change_type': '证券存续状态', 'sh_hk_flag': '是否沪港通标的', 'sz_hk_flag': '是否深港通标的'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="stock_Info", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def leader_profile(secu_code: str = None, position_type: str = None, fields: str = None, **kwargs)->Query:
    """
    高管基本信息，高管领导人简介、姓名、学历、职位、年度报酬等（包括科创板）
    https://udata.hs.net/datas/322/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ----------------------------------------------
    secu_code      String  否      证券代码  默认取值：600570
    position_type  String  否      职位类型  默认取全部，1-董事会，2-高管，3-监事会
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名              类型       长度  说明            备注
    ------------------  -------  ------  --------------  ------------------------------------
    secu_code           String     20    股票代码
    secu_abbr           String     20    股票简称
    secu_market         String     10    证券市场        83-上海证券交易所，90-深圳证券交易所
    position_type       String     10    职位类型        1-董事会，2-高管，3-监事会
    leader_name         String     40    领导人姓名
    position            Integer    20    职位
    begin_date          Integer    20    任职起始日
    birthday            Integer    20    出生年月
    leader_degree       String     20    学历程度
    newest_hold         String     16    最新持股数
    shareholding_ratio  String     16    持股比例        单位%保留2位小数
    end_date            String     20    年度报酬报告期
    annual_reward       Integer    16.4  年度报酬        保留2位小数
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'position_type': 'str', 'leader_name': 'str', 'position': 'int', 'begin_date': 'int', 'birthday': 'int', 'leader_degree': 'str', 'newest_hold': 'str', 'shareholding_ratio': 'str', 'end_date': 'str', 'annual_reward': 'int'}
    column_name_dict = {'secu_code': '股票代码', 'secu_abbr': '股票简称', 'secu_market': '证券市场', 'position_type': '职位类型', 'leader_name': '领导人姓名', 'position': '职位', 'begin_date': '任职起始日', 'birthday': '出生年月', 'leader_degree': '学历程度', 'newest_hold': '最新持股数', 'shareholding_ratio': '持股比例', 'end_date': '年度报酬报告期', 'annual_reward': '年度报酬'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="leader_profile", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def st_stock_list(secu_market: str = None, secu_category: str = None, listed_sector: str = None, fields: str = None, **kwargs)->Query:
    """
    当前ST及*ST的股票代码列表
    https://udata.hs.net/datas/323/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ----------------------------------------------
    secu_market    String  否      证券市场  默认取全部，83-上交所，90-深交所
    secu_category  String  否      证券类型  默认取全部，1-A股，2-B股
    listed_sector  String  否      上市板块  默认取全部，1-主板，2-中小企业版
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型      长度  说明      备注
    -------------  ------  ------  --------  ------
    secu_code      String      20  证券代码
    secu_abbr      String      20  证券简称
    chi_name       String      20  公司名称
    secu_market    String      20  证券市场
    secu_category  String      20  证券类型
    listed_sector  String      20  上市板块
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'chi_name': 'str', 'secu_market': 'str', 'secu_category': 'str', 'listed_sector': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'chi_name': '公司名称', 'secu_market': '证券市场', 'secu_category': '证券类型', 'listed_sector': '上市板块'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="st_stock_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def shszhk_stock_list(etfcomponent_type: str = None, fields: str = None, **kwargs)->Query:
    """
    ‘沪股通’和‘港股通（沪）’各自的成分股
    https://udata.hs.net/datas/331/
    <参数>
    名称               类型    必填    说明        备注
    -----------------  ------  ------  ----------  ----------------------------------------------
    etfcomponent_type  String  否      成分股类别  默认取值1，1：港股通(沪)；
    fields             String  否      字段集合    默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名             类型      长度  说明          备注
    -----------------  ------  ------  ------------  ------
    etfcomponent_type  String      20  成分股类别
    secu_code          String      20  证券代码
    secu_abbr          String      20  证券简称
    secu_category      String      20  证券类别
    secu_market        String      20  证券市场
    select_time        String      20  入选股票时间
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'etfcomponent_type': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_category': 'str', 'secu_market': 'str', 'select_time': 'str'}
    column_name_dict = {'etfcomponent_type': '成分股类别', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_category': '证券类别', 'secu_market': '证券市场', 'select_time': '入选股票时间'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="basic_data", method="shszhk_stock_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_quote_daily(en_prod_code: str = None, trading_date: str = None, adjust_way: int = None, fields: str = None, **kwargs)->Query:
    """
    沪深日行情，包含昨收价、开盘价、最高价、最低价、收盘价、成交量、成交金额等数据
    https://udata.hs.net/datas/332/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  -------------------------------------------------
    en_prod_code  String   否      证券代码  默认参数为全市场A股股票代码
    trading_date  String   否      交易日期  默认取值：2021-05-10
    adjust_way    Integer  否      复权方式  默认取值为0，不复权:"0","前复权":"1","后复权":"2"
    fields        String   否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                   类型      长度  说明                   备注
    -----------------------  ------  ------  ---------------------  ------
    prod_code                String    20    证券代码
    trading_date             String    20    交易日期
    prev_close_price         Float     16.4  前收盘价
    open_price               Float     16.4  开盘价
    high_price               Float     16.4  最高价
    low_price                Float     16.4  最低价
    close_price              Float     16.4  收盘价
    avg_price                String    20    变动均价
    px_change                Float     16.4  价格涨跌
    px_change_rate           Float     16.4  涨跌幅
    turnover_ratio           Float     16.4  换手率
    business_balance         Float     16.4  成交额
    turnover_deals           Float     16.4  成交笔数
    amplitude                Float     16.4  振幅
    issue_price_change       Float     16.4  相对发行价涨跌
    issue_price_change_rate  Float     16.4  相对发行价涨跌幅（%）
    recently_trading_date    String    20    最近交易日期
    ratio_adjust_factor      Float     16.4  复权因子
    business_amount          Float     16.4  成交数量
    up_down_status           String    20    涨跌停状态
    turnover_status          String    20    交易状态
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'prev_close_price': 'float', 'open_price': 'float', 'high_price': 'float', 'low_price': 'float', 'close_price': 'float', 'avg_price': 'str', 'px_change': 'float', 'px_change_rate': 'float', 'turnover_ratio': 'float', 'business_balance': 'float', 'turnover_deals': 'float', 'amplitude': 'float', 'issue_price_change': 'float', 'issue_price_change_rate': 'float', 'recently_trading_date': 'str', 'ratio_adjust_factor': 'float', 'business_amount': 'float', 'up_down_status': 'str', 'turnover_status': 'str'}
    column_name_dict = {'prod_code': '证券代码', 'trading_date': '交易日期', 'prev_close_price': '前收盘价', 'open_price': '开盘价', 'high_price': '最高价', 'low_price': '最低价', 'close_price': '收盘价', 'avg_price': '变动均价', 'px_change': '价格涨跌', 'px_change_rate': '涨跌幅', 'turnover_ratio': '换手率', 'business_balance': '成交额', 'turnover_deals': '成交笔数', 'amplitude': '振幅', 'issue_price_change': '相对发行价涨跌', 'issue_price_change_rate': '相对发行价涨跌幅（%）', 'recently_trading_date': '最近交易日期', 'ratio_adjust_factor': '复权因子', 'business_amount': '成交数量', 'up_down_status': '涨跌停状态', 'turnover_status': '交易状态'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="stock_quote_daily", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_quote_weekly(en_prod_code: str = None, trading_date: str = None, adjust_way: int = None, fields: str = None, **kwargs)->Query:
    """
    沪深周行情，包含上周收价、周开盘价、周最高价、周最低价、周收盘价、周成交量、周成交金额等数据
    https://udata.hs.net/datas/333/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  -------------------------------------------------
    en_prod_code  String   否      证券代码  默认参数为全市场A股股票代码
    trading_date  String   否      交易日期  默认取值：2021-08-10
    adjust_way    Integer  否      复权方式  默认取值为0，不复权:"0","前复权":"1","后复权":"2"
    fields        String   否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                 备注
    -------------------------  ------  ------  -------------------  ------
    prod_code                  String    20    证劵代码
    trading_date               String    20    交易日期
    week_prev_close_price      Float     16.4  周前收盘价
    week_open_price            Float     16.4  周开盘价
    week_high_price            Float     16.4  周最高价
    week_low_price             Float     16.4  周最低价
    week_close_price           Float     16.4  周收盘价
    week_max_close_price       Float     16.4  周最高收盘价
    week_min_close_price       Float     16.4  周最低收盘价
    week_avg_close_price       Float     16.4  周均价
    week_avg_business_balance  Float     16.4  周日均成交额
    week_avg_business_amount   Float     16.4  周日均成交量
    week_px_change             Float     16.4  周涨跌
    week_px_change_rate        Float     16.4  周涨跌幅（%）
    week_turnover_ratio        Float     16.4  周换手率（%）
    week_avg_turnover_ratio    Float     16.4  周日平均换手率（%）
    week_business_amount       Float     16.4  周成交量
    week_business_balance      Float     16.4  周成交额
    week_amplitude             Float     16.4  周振幅（%）
    week_high_price_date       String    20    周最高价日
    week_low_price_date        String    20    周最低价日
    week_max_close_price_date  String    20    周最高收盘价日
    week_min_close_price_date  String    20    周最低收盘价日
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'week_prev_close_price': 'float', 'week_open_price': 'float', 'week_high_price': 'float', 'week_low_price': 'float', 'week_close_price': 'float', 'week_max_close_price': 'float', 'week_min_close_price': 'float', 'week_avg_close_price': 'float', 'week_avg_business_balance': 'float', 'week_avg_business_amount': 'float', 'week_px_change': 'float', 'week_px_change_rate': 'float', 'week_turnover_ratio': 'float', 'week_avg_turnover_ratio': 'float', 'week_business_amount': 'float', 'week_business_balance': 'float', 'week_amplitude': 'float', 'week_high_price_date': 'str', 'week_low_price_date': 'str', 'week_max_close_price_date': 'str', 'week_min_close_price_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'week_prev_close_price': '周前收盘价', 'week_open_price': '周开盘价', 'week_high_price': '周最高价', 'week_low_price': '周最低价', 'week_close_price': '周收盘价', 'week_max_close_price': '周最高收盘价', 'week_min_close_price': '周最低收盘价', 'week_avg_close_price': '周均价', 'week_avg_business_balance': '周日均成交额', 'week_avg_business_amount': '周日均成交量', 'week_px_change': '周涨跌', 'week_px_change_rate': '周涨跌幅（%）', 'week_turnover_ratio': '周换手率（%）', 'week_avg_turnover_ratio': '周日平均换手率（%）', 'week_business_amount': '周成交量', 'week_business_balance': '周成交额', 'week_amplitude': '周振幅（%）', 'week_high_price_date': '周最高价日', 'week_low_price_date': '周最低价日', 'week_max_close_price_date': '周最高收盘价日', 'week_min_close_price_date': '周最低收盘价日'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="stock_quote_weekly", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_quote_monthly(en_prod_code: str = None, trading_date: str = None, adjust_way: int = None, fields: str = None, **kwargs)->Query:
    """
    沪深月行情，包含月前收盘价、月开盘价、月最高价、月最低价、月收盘价、月成交量、月成交金额等数据
    https://udata.hs.net/datas/334/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  -------------------------------------------------
    en_prod_code  String   否      证券代码  默认参数为全市场A股股票代码
    trading_date  String   否      交易日期  默认取值：2021-08-10
    adjust_way    Integer  否      复权方式  默认取值为0，不复权:"0","前复权":"1","后复权":"2"
    fields        String   否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                 备注
    --------------------------  ------  ------  -------------------  ------
    prod_code                   String    20    证劵代码
    trading_date                String    20    交易日期
    month_prev_close_price      Float     16.4  月前收盘价
    month_open_price            Float     16.4  月开盘价
    month_high_price            Float     16.4  月最高价
    month_low_price             Float     16.4  月最低价
    month_close_price           Float     16.4  月收盘价
    month_max_close_price       Float     16.4  月最高收盘价
    month_min_close_price       Float     16.4  月最低收盘价
    month_avg_close_price       Float     16.4  月均价
    month_avg_business_balance  Float     16.4  月日均成交额
    month_avg_business_amount   Float     16.4  月日均成交量
    month_px_change             Float     16.4  月涨跌
    month_px_change_rate        Float     16.4  月涨跌幅（%）
    month_turnover_ratio        Float     16.4  月换手率（%）
    month_avg_turnover_ratio    Float     16.4  月日平均换手率（%）
    month_business_amount       Float     16.4  月成交量
    month_business_balance      Float     16.4  月成交额
    month_amplitude             Float     16.4  月振幅（%）
    month_high_price_date       String    20    月最高价日
    month_low_price_date        String    20    月最低价日
    month_max_close_price_date  String    20    月最高收盘价日
    month_min_close_price_date  String    20    月最低收盘价日
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'month_prev_close_price': 'float', 'month_open_price': 'float', 'month_high_price': 'float', 'month_low_price': 'float', 'month_close_price': 'float', 'month_max_close_price': 'float', 'month_min_close_price': 'float', 'month_avg_close_price': 'float', 'month_avg_business_balance': 'float', 'month_avg_business_amount': 'float', 'month_px_change': 'float', 'month_px_change_rate': 'float', 'month_turnover_ratio': 'float', 'month_avg_turnover_ratio': 'float', 'month_business_amount': 'float', 'month_business_balance': 'float', 'month_amplitude': 'float', 'month_high_price_date': 'str', 'month_low_price_date': 'str', 'month_max_close_price_date': 'str', 'month_min_close_price_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'month_prev_close_price': '月前收盘价', 'month_open_price': '月开盘价', 'month_high_price': '月最高价', 'month_low_price': '月最低价', 'month_close_price': '月收盘价', 'month_max_close_price': '月最高收盘价', 'month_min_close_price': '月最低收盘价', 'month_avg_close_price': '月均价', 'month_avg_business_balance': '月日均成交额', 'month_avg_business_amount': '月日均成交量', 'month_px_change': '月涨跌', 'month_px_change_rate': '月涨跌幅（%）', 'month_turnover_ratio': '月换手率（%）', 'month_avg_turnover_ratio': '月日平均换手率（%）', 'month_business_amount': '月成交量', 'month_business_balance': '月成交额', 'month_amplitude': '月振幅（%）', 'month_high_price_date': '月最高价日', 'month_low_price_date': '月最低价日', 'month_max_close_price_date': '月最高收盘价日', 'month_min_close_price_date': '月最低收盘价日'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="stock_quote_monthly", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_quote_yearly(en_prod_code: str = None, trading_date: str = None, adjust_way: int = None, fields: str = None, **kwargs)->Query:
    """
    沪深年行情信息，包含年前收盘价、年最高价、年最低价、年日均成交量、年涨跌幅等数据
    https://udata.hs.net/datas/335/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  -------------------------------------------------
    en_prod_code  String   否      证券代码  默认参数为全市场A股股票代码
    trading_date  String   否      交易日期  默认取值：2021-08-10
    adjust_way    Integer  否      复权方式  默认取值为0，不复权:"0","前复权":"1","后复权":"2"
    fields        String   否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                 备注
    -------------------------  ------  ------  -------------------  ------
    prod_code                  String    20    证劵代码
    trading_date               String    20    交易日期
    year_prev_close_price      Float     16.4  年前收盘价
    year_open_price            Float     16.4  年开盘价
    year_high_price            Float     16.4  年最高价
    year_low_price             Float     16.4  年最低价
    year_close_price           Float     16.4  年收盘价
    year_max_close_price       Float     16.4  年最高收盘价
    year_min_close_price       Float     16.4  年最低收盘价
    year_avg_close_price       Float     16.4  年均价
    year_avg_business_balance  Float     16.4  年日均成交额
    year_avg_business_amount   Float     16.4  年日均成交量
    year_px_change             Float     16.4  年涨跌
    year_px_change_rate        Float     16.4  年涨跌幅（%）
    year_turnover_ratio        Float     16.4  年换手率（%）
    year_avg_turnover_ratio    Float     16.4  年日平均换手率（%）
    year_business_amount       Float     16.4  年成交量
    year_business_balance      String    20    本年金额
    year_amplitude             Float     16.4  年振幅（%）
    year_high_price_date       String    20    年最高价日
    year_low_price_date        String    20    年最低价日
    year_max_close_price_date  String    20    年最高收盘价日
    year_min_close_price_date  String    20    年最低收盘价日
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'year_prev_close_price': 'float', 'year_open_price': 'float', 'year_high_price': 'float', 'year_low_price': 'float', 'year_close_price': 'float', 'year_max_close_price': 'float', 'year_min_close_price': 'float', 'year_avg_close_price': 'float', 'year_avg_business_balance': 'float', 'year_avg_business_amount': 'float', 'year_px_change': 'float', 'year_px_change_rate': 'float', 'year_turnover_ratio': 'float', 'year_avg_turnover_ratio': 'float', 'year_business_amount': 'float', 'year_business_balance': 'str', 'year_amplitude': 'float', 'year_high_price_date': 'str', 'year_low_price_date': 'str', 'year_max_close_price_date': 'str', 'year_min_close_price_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'year_prev_close_price': '年前收盘价', 'year_open_price': '年开盘价', 'year_high_price': '年最高价', 'year_low_price': '年最低价', 'year_close_price': '年收盘价', 'year_max_close_price': '年最高收盘价', 'year_min_close_price': '年最低收盘价', 'year_avg_close_price': '年均价', 'year_avg_business_balance': '年日均成交额', 'year_avg_business_amount': '年日均成交量', 'year_px_change': '年涨跌', 'year_px_change_rate': '年涨跌幅（%）', 'year_turnover_ratio': '年换手率（%）', 'year_avg_turnover_ratio': '年日平均换手率（%）', 'year_business_amount': '年成交量', 'year_business_balance': '本年金额', 'year_amplitude': '年振幅（%）', 'year_high_price_date': '年最高价日', 'year_low_price_date': '年最低价日', 'year_max_close_price_date': '年最高收盘价日', 'year_min_close_price_date': '年最低收盘价日'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="stock_quote_yearly", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def money_flow(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取单个交易日，沪深股票在不同单笔成交金额区间的累计主买、主卖金额及成交量数据
    https://udata.hs.net/datas/336/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证券代码  默认参数为全市场A股股票代码
    trading_date  String  否      交易日期  默认取值：2021-05-10
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名             类型      长度  说明                  备注
    -----------------  ------  ------  --------------------  ------
    prod_code          String    20    证券代码
    trading_date       String    20    交易日期
    turnover_in        Float     16.4  流入成交额
    turnover_out       Float     16.4  流出成交额
    net_turnover_in    Float     16.4  资金净流入额
    amount_in          Float     16.4  流入成交量
    amount_out         Float     16.4  流出成交量
    net_amount_in      Float     16.4  净流入量
    super_in           Float     16.4  超大单流入
    super_amount_in    Float     16.4  主动买入特大单成交量
    large_in           Float     16.4  大单流入
    large_amount_in    Float     16.4  主动买入大单成交量
    medium_in          Float     16.4  中单流入
    medium_amount_in   Float     16.4  主动买入中单成交量
    little_in          Float     16.4  小单流入
    little_amount_in   Float     16.4  主动买入小单成交量
    super_out          Float     16.4  超大单流出
    super_amount_out   Float     16.4  主动卖出特大单成交量
    large_out          Float     16.4  大单流出
    large_amount_out   Float     16.4  主动卖出大单成交量
    medium_out         Float     16.4  中单流出
    medium_amount_out  Float     16.4  主动卖出中单成交量
    little_out         Float     16.4  小单流出
    little_amount_out  Float     16.4  主动卖出小单成交量
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'turnover_in': 'float', 'turnover_out': 'float', 'net_turnover_in': 'float', 'amount_in': 'float', 'amount_out': 'float', 'net_amount_in': 'float', 'super_in': 'float', 'super_amount_in': 'float', 'large_in': 'float', 'large_amount_in': 'float', 'medium_in': 'float', 'medium_amount_in': 'float', 'little_in': 'float', 'little_amount_in': 'float', 'super_out': 'float', 'super_amount_out': 'float', 'large_out': 'float', 'large_amount_out': 'float', 'medium_out': 'float', 'medium_amount_out': 'float', 'little_out': 'float', 'little_amount_out': 'float'}
    column_name_dict = {'prod_code': '证券代码', 'trading_date': '交易日期', 'turnover_in': '流入成交额', 'turnover_out': '流出成交额', 'net_turnover_in': '资金净流入额', 'amount_in': '流入成交量', 'amount_out': '流出成交量', 'net_amount_in': '净流入量', 'super_in': '超大单流入', 'super_amount_in': '主动买入特大单成交量', 'large_in': '大单流入', 'large_amount_in': '主动买入大单成交量', 'medium_in': '中单流入', 'medium_amount_in': '主动买入中单成交量', 'little_in': '小单流入', 'little_amount_in': '主动买入小单成交量', 'super_out': '超大单流出', 'super_amount_out': '主动卖出特大单成交量', 'large_out': '大单流出', 'large_amount_out': '主动卖出大单成交量', 'medium_out': '中单流出', 'medium_amount_out': '主动卖出中单成交量', 'little_out': '小单流出', 'little_amount_out': '主动卖出小单成交量'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="money_flow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def suspension_list(suspensiondate: str = None, fields: str = None, **kwargs)->Query:
    """
    上市公司股票停牌复牌信息
    https://udata.hs.net/datas/337/
    <参数>
    名称            类型    必填    说明      备注
    --------------  ------  ------  --------  ----------------------------------------------
    suspensiondate  String  否      停牌日期  默认参数为最新交易日
    fields          String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名           类型      长度  说明      备注
    ---------------  ------  ------  --------  ------
    secu_code        String      20  股票代码
    secu_abbr        String      20  股票简称
    suspend_date     String      20  停牌日期
    suspend_time     String      20  停牌时间
    resumption_date  String      20  复牌日期
    resumption_time  String      20  复牌时间
    suspend_reason   String     200  停牌原因
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'suspend_date': 'str', 'suspend_time': 'str', 'resumption_date': 'str', 'resumption_time': 'str', 'suspend_reason': 'str'}
    column_name_dict = {'secu_code': '股票代码', 'secu_abbr': '股票简称', 'suspend_date': '停牌日期', 'suspend_time': '停牌时间', 'resumption_date': '复牌日期', 'resumption_time': '复牌时间', 'suspend_reason': '停牌原因'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="suspension_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def shareholder_top10(secu_code: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取公司十大股东相关数据，包括主要股东构成及持股数量比例、持股性质
    https://udata.hs.net/datas/338/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    secu_code   String  否      证券代码  不支持多只股票代码，默认参数为：600570
    start_date  String  否      开始日期  默认参数为：系统日期-1年
    end_date    String  否      截止日期  默认参数为：系统日期
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                      备注
    -------------------------  ------  ------  ------------------------  --------------------
    secu_market                String      20  证券市场                  83-上交所；90-深交所
    secu_code                  String      20  证券代码
    secu_abbr                  String      20  证券简称
    trading_date               String      20  交易日期
    info_source                String      20  信息来源
    hold_vols                  String      20  合计持有股份总数（万股）
    total_rates                String      20  合计占总股本比例（%）     单位%
    controller_name            String      20  实际控制人
    serial_number              String      20  股东序号
    stock_holder_name          String      20  股东名称
    stock_holder_kind          String      20  股东性质
    share_character_statement  String      20  股本性质
    hold_vol                   String      20  持股份总数（万股）
    total_rate                 String      20  占总股本比例(%)           单位%
    hold_vol_change            String      20  较上期持股变动股数(万股)
    total_rate_change          String      20  较上期变动比例(%)         单位%
    aas_change_type            String      20  变动类别
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'trading_date': 'str', 'info_source': 'str', 'hold_vols': 'str', 'total_rates': 'str', 'controller_name': 'str', 'serial_number': 'str', 'stock_holder_name': 'str', 'stock_holder_kind': 'str', 'share_character_statement': 'str', 'hold_vol': 'str', 'total_rate': 'str', 'hold_vol_change': 'str', 'total_rate_change': 'str', 'aas_change_type': 'str'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'trading_date': '交易日期', 'info_source': '信息来源', 'hold_vols': '合计持有股份总数（万股）', 'total_rates': '合计占总股本比例（%）', 'controller_name': '实际控制人', 'serial_number': '股东序号', 'stock_holder_name': '股东名称', 'stock_holder_kind': '股东性质', 'share_character_statement': '股本性质', 'hold_vol': '持股份总数（万股）', 'total_rate': '占总股本比例(%)', 'hold_vol_change': '较上期持股变动股数(万股)', 'total_rate_change': '较上期变动比例(%)', 'aas_change_type': '变动类别'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="shareholder_top10", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def float_shareholder_top10(secu_code: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取公司十大流通股东相关数据，包括主要股东构成及持股数量比例、持股性质
    https://udata.hs.net/datas/339/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    secu_code   String  否      证券代码  不支持多只股票代码，默认参数为：600570
    start_date  String  否      开始日期  默认参数为：系统日期-1年
    end_date    String  否      截止日期  默认参数为：系统日期
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                      备注
    -------------------------  ------  ------  ------------------------  ----------------------
    secu_market                String      20  证券市场                  ：83-上交所；90-深交所
    secu_code                  String      20  证券代码
    secu_abbr                  String      20  证券简称
    trading_date               String      20  交易日期
    info_source                String      20  信息来源
    hold_vols                  String      20  合计持有流通股总数(万股)
    float_rates                String      20  合计占总流通股本比例(%)   单位%
    controller_name            String      20  实际控制人
    serial_number              String      20  股东序号
    stock_holder_name          String      20  股东名称
    stock_holder_kind          String      20  股东性质
    share_character_statement  String      20  股本性质
    hold_vol                   String      20  持流通股总数(万股)
    float_rate                 String      20  占总流通股比例(%)         单位%
    hold_vol_change            String      20  较上期持股变动股数(万股)
    total_rate_change          String      20  较上期变动比例(%)         单位%
    aas_change_type            String      20  变动类别
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'trading_date': 'str', 'info_source': 'str', 'hold_vols': 'str', 'float_rates': 'str', 'controller_name': 'str', 'serial_number': 'str', 'stock_holder_name': 'str', 'stock_holder_kind': 'str', 'share_character_statement': 'str', 'hold_vol': 'str', 'float_rate': 'str', 'hold_vol_change': 'str', 'total_rate_change': 'str', 'aas_change_type': 'str'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'trading_date': '交易日期', 'info_source': '信息来源', 'hold_vols': '合计持有流通股总数(万股)', 'float_rates': '合计占总流通股本比例(%)', 'controller_name': '实际控制人', 'serial_number': '股东序号', 'stock_holder_name': '股东名称', 'stock_holder_kind': '股东性质', 'share_character_statement': '股本性质', 'hold_vol': '持流通股总数(万股)', 'float_rate': '占总流通股比例(%)', 'hold_vol_change': '较上期持股变动股数(万股)', 'total_rate_change': '较上期变动比例(%)', 'aas_change_type': '变动类别'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="float_shareholder_top10", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def lh_daily(trading_day: str = None, fields: str = None, **kwargs)->Query:
    """
    每日龙虎榜上榜股票的股票代码、成交金额、净买入额等数据
    https://udata.hs.net/datas/340/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ----------------------------------------------
    trading_day  String  否      交易日期  默认参数为：系统日期
    fields       String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名              类型       长度  说明              备注
    ------------------  -------  ------  ----------------  --------
    closing_price       Float      16.4  最新价(元)        单位：元
    price_change_ratio  String     20    涨跌幅
    stock_total         String     20    最近一年上榜次数
    close_price         Float      16.4  昨收价(元)        单位：元
    business_balance    Float      16.4  成交金额(元)      单位：元
    business_amount     Integer    20    成交量(股)
    secu_abbr           String     20    股票简称
    secu_code           String     20    证券代码
    trading_day         String     20    交易日期
    net_balance         Float      16.4  净买入额(元)      单位：元
    mark                Integer    40    标签
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'closing_price': 'float', 'price_change_ratio': 'str', 'stock_total': 'str', 'close_price': 'float', 'business_balance': 'float', 'business_amount': 'int', 'secu_abbr': 'str', 'secu_code': 'str', 'trading_day': 'str', 'net_balance': 'float', 'mark': 'int'}
    column_name_dict = {'closing_price': '最新价(元)', 'price_change_ratio': '涨跌幅', 'stock_total': '最近一年上榜次数', 'close_price': '昨收价(元)', 'business_balance': '成交金额(元)', 'business_amount': '成交量(股)', 'secu_abbr': '股票简称', 'secu_code': '证券代码', 'trading_day': '交易日期', 'net_balance': '净买入额(元)', 'mark': '标签'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="lh_daily", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def lh_stock(secu_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取个股龙虎榜详情，包括成交数据、营业部买入和卖出数据等
    https://udata.hs.net/datas/341/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    secu_code     String  否      证券代码  默认取值：000001.SZ
    trading_date  String  否      交易日期  默取值最新一次上榜日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                 类型       长度  说明                备注
    ---------------------  -------  ------  ------------------  -----------------------------------------------------------------------
    secu_code              String     20    证券代码
    trading_date           String     20    交易日期
    secu_abbr              String     20    证券简称
    stock_total            String     20    最近一年上榜次数
    buy_total_rate         String     20    买入总占比
    sale_total_rate        String     20    卖出总占比
    net_balance            Float      16.2  净买入金额          正数为净买入，负数为净卖出买入信息中所有买入金额-卖出信息中所有卖出金额
    net_rate               String     20    净买入占比          正数为净买入，负数为净卖出净买卖金额(元)/股票总成交金额(元)
    business_balance       Float      16.2  成交金额            股票总成交金额(元)
    business_amount        Integer    10    成交数量            成交量(股)
    abnormal_type          String    200    上榜类型简称
    abnormal_code          String      2    上榜类型对应代码
    type                   String     20    席位
    buy_rate               Float       9.8  买入金额占总金额比
    buy_balance            Float      16.2  买入金额
    sale_rate              Float       9.8  卖出金额占总金额比
    sale_balance           Float      16.2  卖出金额
    sales_department_name  String    200    营业部简称
    list_date              String    200    近十次上榜日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'trading_date': 'str', 'secu_abbr': 'str', 'stock_total': 'str', 'buy_total_rate': 'str', 'sale_total_rate': 'str', 'net_balance': 'float', 'net_rate': 'str', 'business_balance': 'float', 'business_amount': 'int', 'abnormal_type': 'str', 'abnormal_code': 'str', 'type': 'str', 'buy_rate': 'float', 'buy_balance': 'float', 'sale_rate': 'float', 'sale_balance': 'float', 'sales_department_name': 'str', 'list_date': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'trading_date': '交易日期', 'secu_abbr': '证券简称', 'stock_total': '最近一年上榜次数', 'buy_total_rate': '买入总占比', 'sale_total_rate': '卖出总占比', 'net_balance': '净买入金额', 'net_rate': '净买入占比', 'business_balance': '成交金额', 'business_amount': '成交数量', 'abnormal_type': '上榜类型简称', 'abnormal_code': '上榜类型对应代码', 'type': '席位', 'buy_rate': '买入金额占总金额比', 'buy_balance': '买入金额', 'sale_rate': '卖出金额占总金额比', 'sale_balance': '卖出金额', 'sales_department_name': '营业部简称', 'list_date': '近十次上榜日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="lh_stock", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_quote_minutes(en_prod_code: str = None, begin_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    取得上市股票列表，用于股票行情查询
    https://udata.hs.net/datas/342/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      聚源代码  不支持多只股票代码，默认参数为：600570.SH
    begin_date    String  否      起始日期  默认参数为：系统日期-1
    end_date      String  否      结束日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名           类型      长度  说明        备注
    ---------------  ------  ------  ----------  ---------------------------------------------
    date             String    20    日期
    time             String    20    发生时间    格式(HHMMSS)，首0去除。如930 931 …… 1459 1500
    open             Float     16.4  开盘价(元)
    high             Float     16.4  最高价(元)
    low              Float     16.4  最低价(元)
    close            Float     16.4  收盘价(元)
    turnover_volume  Float     16.4  成交量
    turnover_value   Float     16.4  成交额
    change           Float     16.4  涨跌幅(元)
    change_pct       Float     16.4  涨跌幅(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'time': 'str', 'open': 'float', 'high': 'float', 'low': 'float', 'close': 'float', 'turnover_volume': 'float', 'turnover_value': 'float', 'change': 'float', 'change_pct': 'float'}
    column_name_dict = {'date': '日期', 'time': '发生时间', 'open': '开盘价(元)', 'high': '最高价(元)', 'low': '最低价(元)', 'close': '收盘价(元)', 'turnover_volume': '成交量', 'turnover_value': '成交额', 'change': '涨跌幅(元)', 'change_pct': '涨跌幅(%)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="stock_quote_minutes", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def shszhk_capitalflow(exchange_kind: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计时间范围内沪港通、深港通等资金流向数据，以及领涨领跌股，涨跌幅，资金余额等数据信息。数据每日更新
    https://udata.hs.net/datas/343/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ------------------------------------------------------------------------------
    exchange_kind  String  否      市场类型  默认参数为1，1-表示沪股通， 2-表示港股通(沪) ,3-表示深股通，4-表示港股通（深）
    start_date     String  否      开始日期  默认参数为：系统日期-5天
    end_date       String  否      截止日期  默认参数为：系统日期
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                    备注
    ------------------------  ------  ------  ----------------------  ----------------------------------------------------------
    trade_date                String    20    交易日期                交易日期
    surplus_quota             Float     16.4  剩余额度                当日余额(百万元)
    now_capital_inflow        Float     16.4  当日资金流入（元）      当日资金流入(元) 算法：当日额度-当日余额
    sum_capital_inflow        Float     16.4  历史累计流入(亿元)      历史累计流入亿元)
    now_net_purchase_balance  Float     16.4  当日成交净买额（百万）  当日成交净买额(百万元) 算法：当日买入成交额-当日卖出成交额
    buy_balance               Float     16.4  买入金额                买入成交额(百万元)
    sell_balance              Float     16.4  卖出金额                卖出成交额(百万元)
    led_stock_code            String    20    领涨股代码              领涨股代码
    led_stock_name            String    20    领涨股名称              领涨股名称
    secu_market               String    20    证券市场                领涨股市场：72-香交所，83-上交所，90-深交所
    led_stock_chg             Float     16.4  领涨股涨跌幅(%)         领涨股涨跌幅(%)
    currency                  Float     16.4  货币单位                货币单位：1100-港元，1420-人民币元
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trade_date': 'str', 'surplus_quota': 'float', 'now_capital_inflow': 'float', 'sum_capital_inflow': 'float', 'now_net_purchase_balance': 'float', 'buy_balance': 'float', 'sell_balance': 'float', 'led_stock_code': 'str', 'led_stock_name': 'str', 'secu_market': 'str', 'led_stock_chg': 'float', 'currency': 'float'}
    column_name_dict = {'trade_date': '交易日期', 'surplus_quota': '剩余额度', 'now_capital_inflow': '当日资金流入（元）', 'sum_capital_inflow': '历史累计流入(亿元)', 'now_net_purchase_balance': '当日成交净买额（百万）', 'buy_balance': '买入金额', 'sell_balance': '卖出金额', 'led_stock_code': '领涨股代码', 'led_stock_name': '领涨股名称', 'secu_market': '证券市场', 'led_stock_chg': '领涨股涨跌幅(%)', 'currency': '货币单位'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="shszhk_capitalflow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def shszhk_deal_top10(exchange_kind: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    按交易日统计沪港通、深港通等十大成交股列表，成交金额，净买卖额，涨跌幅数据等。包括科创板
    https://udata.hs.net/datas/344/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ------------------------------------------------------------------------------
    exchange_kind  String  否      市场类型  默认参数为1，1-表示沪股通， 2-表示港股通(沪) ,3-表示深股通，4-表示港股通（深）
    start_date     String  否      开始日期  默认参数为：系统日期-5天
    end_date       String  否      截止日期  默认参数为：系统日期
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明          备注
    --------------------  ------  ------  ------------  ---------------------------------------------
    secu_code             String    20    证券代码      股票代码
    secu_abbr             String    20    证券简称      股票简称
    secu_market           String    20    证券市场      股票市场：72-港交所，83-上交所，90-深交所
    trade_date            String    20    交易日期      交易日期
    rank                  Float     16.4  排名          排名
    buy_balance           Float     16.4  买入金额(元)  买入金额(元)
    sell_balance          Float     16.4  卖出金额(元)  卖出金额(元)
    net_purchase_balance  Float     16.4  净买额（元）  净买额(元)
    currency              Float     16.4  货币单位      货币单位：1000-美元，1100-港元，1420-人民币元
    close_price           Float     16.4  收盘价        收盘价(元)
    px_change_rate        Float     16.4  涨跌幅        涨跌幅(%)
    business_balance      Float     16.4  成交金额      成交金额(元)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'trade_date': 'str', 'rank': 'float', 'buy_balance': 'float', 'sell_balance': 'float', 'net_purchase_balance': 'float', 'currency': 'float', 'close_price': 'float', 'px_change_rate': 'float', 'business_balance': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'trade_date': '交易日期', 'rank': '排名', 'buy_balance': '买入金额(元)', 'sell_balance': '卖出金额(元)', 'net_purchase_balance': '净买额（元）', 'currency': '货币单位', 'close_price': '收盘价', 'px_change_rate': '涨跌幅', 'business_balance': '成交金额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="shszhk_deal_top10", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def shszhk_distribution(exchange_kind: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    展示沪港通、深港通的股票涨跌分布。数据每日更新。包括科创板
    https://udata.hs.net/datas/347/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ------------------------------------------------------------------------------
    exchange_kind  String  否      市场类型  默认参数为1，1-表示沪股通， 2-表示港股通(沪) ,3-表示深股通，4-表示港股通（深）
    start_date     String  否      开始日期  默认参数为：系统日期-5天
    end_date       String  否      截止日期  默认参数为：系统日期
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名      类型      长度  说明      备注
    ----------  ------  ------  --------  ------
    trade_date  String    20    交易日期
    up_count    Float     16.4  上涨个数
    flat_count  Float     16.4  平盘家数
    down_count  Float     16.4  下跌个数
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trade_date': 'str', 'up_count': 'float', 'flat_count': 'float', 'down_count': 'float'}
    column_name_dict = {'trade_date': '交易日期', 'up_count': '上涨个数', 'flat_count': '平盘家数', 'down_count': '下跌个数'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="shszhk_distribution", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def shszhk_change_top10(exchange_kind: str = None, trading_data: str = None, fields: str = None, **kwargs)->Query:
    """
    按交易日统计沪港通、深港通等十大涨幅股列表，成交金额，换手率，涨跌幅数据等
    https://udata.hs.net/datas/348/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ------------------------------------------------------------------------------
    exchange_kind  String  否      市场类型  默认参数为1，1-表示沪股通， 2-表示港股通(沪) ,3-表示深股通，4-表示港股通（深）
    trading_data   String  否      开始日期  默认参数为：系统日期
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名          类型      长度  说明             备注
    --------------  ------  ------  ---------------  -------------------------------
    trading_data    String    20    交易日
    rank            String    20    排名
    secu_code       String    20    证券代码
    secu_abbr       String    20    证券简称
    secu_market     String    20    证券市场         72-港交所，83-上交所，90-深交所
    close_price     Float     16.4  收盘价
    px_change_rate  Float     16.4  涨跌幅           单位%
    turnover_value  Float     16.4  成交额
    turnover_ratio  Float     16.4  换手率           单位%
    total_mv        Float     16.4  A股总市值
    pe_lyr          Float     16.4  市盈率
    float_value     Float     16.4  A股流通市值(元)
    pe_ttm          Float     16.4  滚动市盈率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trading_data': 'str', 'rank': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'close_price': 'float', 'px_change_rate': 'float', 'turnover_value': 'float', 'turnover_ratio': 'float', 'total_mv': 'float', 'pe_lyr': 'float', 'float_value': 'float', 'pe_ttm': 'float'}
    column_name_dict = {'trading_data': '交易日', 'rank': '排名', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'close_price': '收盘价', 'px_change_rate': '涨跌幅', 'turnover_value': '成交额', 'turnover_ratio': '换手率', 'total_mv': 'A股总市值', 'pe_lyr': '市盈率', 'float_value': 'A股流通市值(元)', 'pe_ttm': '滚动市盈率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="shszhk_change_top10", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def quote_stocklist(fields: str = None, **kwargs)->Query:
    """
    取得上市股票列表，用于股票行情查询
    https://udata.hs.net/datas/558/
    <参数>
    名称    类型    必填    说明      备注
    ------  ------  ------  --------  ----------------------------------------------
    fields  String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名     类型      长度  说明                备注
    ---------  ------  ------  ------------------  ------------
    gil_code   String      20  证券代码(带后缀)    用于行情查询
    secu_code  String      20  证券代码(不带后缀)
    secu_abbr  String      20  证券简称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'gil_code': 'str', 'secu_code': 'str', 'secu_abbr': 'str'}
    column_name_dict = {'gil_code': '证券代码(带后缀)', 'secu_code': '证券代码(不带后缀)', 'secu_abbr': '证券简称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="quote_stocklist", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_quote_daily_list(en_prod_code: str = None, begin_date: str = None, end_date: str = None, adjust_way: str = None, **kwargs)->Query:
    """
    沪深日行情，包含昨收价、开盘价、最高价、最低价、收盘价、成交量、成交金额等数据；
    https://udata.hs.net/datas/644/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------
    en_prod_code  String  否      证券代码  根据交易代码和交易市场组合而成，如600570.SH
    begin_date    String  否      开始日期
    end_date      String  否      截止日期
    adjust_way    String  否      复权方式  默认取值为0；0:不复权，1:前复权，2:后复权
    <返回结果>
    参数名                   类型      长度  说明            备注
    -----------------------  ------  ------  --------------  ------
    trading_date             String    20    交易日
    prev_close_price         Float     16.4  前收盘价
    open_price               Float     16.4  开盘价
    high_price               Float     16.4  最高价
    low_price                Float     16.4  最低价
    close_price              Float     16.4  收盘价
    avg_price                Float     16.4  均价
    px_change                Float     16.4  涨跌
    px_change_rate           Float     16.4  涨跌幅
    amplitude                Float     16.4  振幅
    turnover_ratio           Float     16.4  换手率
    business_balance         Float     16.4  成交金额(元)
    turnover_volume          Float     16.4  成交量(股)
    issue_price_change       Float     16.4  距首发价涨幅
    issue_price_change_rate  Float     16.4  距首发价涨跌幅
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trading_date': 'str', 'prev_close_price': 'float', 'open_price': 'float', 'high_price': 'float', 'low_price': 'float', 'close_price': 'float', 'avg_price': 'float', 'px_change': 'float', 'px_change_rate': 'float', 'amplitude': 'float', 'turnover_ratio': 'float', 'business_balance': 'float', 'turnover_volume': 'float', 'issue_price_change': 'float', 'issue_price_change_rate': 'float'}
    column_name_dict = {'trading_date': '交易日', 'prev_close_price': '前收盘价', 'open_price': '开盘价', 'high_price': '最高价', 'low_price': '最低价', 'close_price': '收盘价', 'avg_price': '均价', 'px_change': '涨跌', 'px_change_rate': '涨跌幅', 'amplitude': '振幅', 'turnover_ratio': '换手率', 'business_balance': '成交金额(元)', 'turnover_volume': '成交量(股)', 'issue_price_change': '距首发价涨幅', 'issue_price_change_rate': '距首发价涨跌幅'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="stock_quote_daily_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def index_quote(en_prod_code: str = None, trading_date: str = None, **kwargs)->Query:
    """
    沪深指数日行情数据；
    https://udata.hs.net/datas/645/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ------
    en_prod_code  String  否      证劵代码
    trading_date  String  否      交易日期
    <返回结果>
    参数名        类型      长度  说明      备注
    ------------  ------  ------  --------  ------
    en_prod_code  String    20    证券代码
    trading_date  String    20    交易日期
    close_price   Float     16.4  收盘价
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'en_prod_code': 'str', 'trading_date': 'str', 'close_price': 'float'}
    column_name_dict = {'en_prod_code': '证券代码', 'trading_date': '交易日期', 'close_price': '收盘价'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_info", method="index_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def industry_category(en_prod_code: str = None, level: int = None, fields: str = None, **kwargs)->Query:
    """
    股票在证监会行业、标普行业、中信行业等多个行业信息；
    https://udata.hs.net/datas/305/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  ----------------------------------------------------
    en_prod_code  String   否      证券代码  默认参数为全市场A股股票代码
    level         Integer  否      等级      全部:"0","一级":"1","二级":"2","三级":"3","四级":"4"
    fields        String   否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型       长度  说明              备注
    -------------------  -------  ------  ----------------  ----------------------------------
    prod_code            String       20  股票代码
    level                Integer       1  等级              0-全部,1-一级,2-二级,3-三级,4-四级
    industry_name_csrc   String       40  证监会行业名称
    industry_code_csrc   String       40  证监会行业代码
    industry_name_gics   String       40  GICS行业行业名称
    industry_code_gics   String       40  GICS行业行业代码
    industry_name_sw     String       40  申万行业名称
    industry_code_sw     String       40  申万行业代码
    industry_name_citic  String       40  中信行业名称
    industry_code_citic  String       40  中信行业代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'level': 'int', 'industry_name_csrc': 'str', 'industry_code_csrc': 'str', 'industry_name_gics': 'str', 'industry_code_gics': 'str', 'industry_name_sw': 'str', 'industry_code_sw': 'str', 'industry_name_citic': 'str', 'industry_code_citic': 'str'}
    column_name_dict = {'prod_code': '股票代码', 'level': '等级', 'industry_name_csrc': '证监会行业名称', 'industry_code_csrc': '证监会行业代码', 'industry_name_gics': 'GICS行业行业名称', 'industry_code_gics': 'GICS行业行业代码', 'industry_name_sw': '申万行业名称', 'industry_code_sw': '申万行业代码', 'industry_name_citic': '中信行业名称', 'industry_code_citic': '中信行业代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="industry_category", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def index_constituent(index_stock_code: str = None, fields: str = None, **kwargs)->Query:
    """
    主要指数的成份构成情况，包括成份证券的市场代码、入选日期等数据
    https://udata.hs.net/datas/351/
    <参数>
    名称              类型    必填    说明      备注
    ----------------  ------  ------  --------  ----------------------------------------------
    index_stock_code  String  否      指数代码  默认参数设置为：399300
    fields            String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名            类型      长度  说明        备注
    ----------------  ------  ------  ----------  ------
    index_stock_code  String      20  指数代码
    index_secu_abbr   String      20  指数简称
    secu_code         String      20  证券代码
    secu_abbr         String      20  证券简称
    secu_market       String      20  成份股市场
    secu_category     String      20  证券类别
    in_date           String      20  入选日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'index_stock_code': 'str', 'index_secu_abbr': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'secu_category': 'str', 'in_date': 'str'}
    column_name_dict = {'index_stock_code': '指数代码', 'index_secu_abbr': '指数简称', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '成份股市场', 'secu_category': '证券类别', 'in_date': '入选日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="index_constituent", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def org_hold(secu_code: str = None, org_type: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期查询个股机构持仓明细与加仓数据
    https://udata.hs.net/datas/352/
    <参数>
    名称       类型    必填    说明          备注
    ---------  ------  ------  ------------  ----------------------------------------------
    secu_code  String  否      证券代码      不支持多只股票代码，如600570
    org_type   String  否      机构类型      默认取全部
    end_date   String  否      报告期查询日  默认取值：2021-03-31
    fields     String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名              类型      长度  说明                 备注
    ------------------  ------  ------  -------------------  -------------------------------------------
    secu_market         String    20    证券市场             83-上交所，90-深交所
    secu_code           String    20    证券代码
    secu_abbr           String    20    证券简称
    end_date            String    20    报告期
    sh_name             String    20    股东名称
    org_type            String    20    机构类型             1：QFII 2：基金 3：券商 4：信托 5：其他机构
    hold_a_sum          String    16    持流通A股数量(万股)
    hold_a_sum_rate     String    16    占流通A股比例(%)     单位%
    a_shares_rate       Float     16.4  占A股比例(%)         单位%
    hold_a_sum_up       String    20    加仓数量(万股)
    hold_a_sum_up_rate  String    20    加仓比例(%)          单位%
    hold_a_sum_up_type  String    20    加仓类型
    market_value        Float     16.6  市值(万元)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'sh_name': 'str', 'org_type': 'str', 'hold_a_sum': 'str', 'hold_a_sum_rate': 'str', 'a_shares_rate': 'float', 'hold_a_sum_up': 'str', 'hold_a_sum_up_rate': 'str', 'hold_a_sum_up_type': 'str', 'market_value': 'float'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'end_date': '报告期', 'sh_name': '股东名称', 'org_type': '机构类型', 'hold_a_sum': '持流通A股数量(万股)', 'hold_a_sum_rate': '占流通A股比例(%)', 'a_shares_rate': '占A股比例(%)', 'hold_a_sum_up': '加仓数量(万股)', 'hold_a_sum_up_rate': '加仓比例(%)', 'hold_a_sum_up_type': '加仓类型', 'market_value': '市值(万元)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="org_hold", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def holder_num(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    公司股东户数的基本情况，包括股东户数，户均持股数量，户均持股比例等数据
    https://udata.hs.net/datas/356/
    <参数>
    名称          类型    必填    说明                         备注
    ------------  ------  ------  ---------------------------  ------
    en_prod_code  String  否      默认参数为全市场A股股票代码
    report_date   String  否      报告期
    fields        String  否      字段集合
    <返回结果>
    参数名                       类型       长度  说明                            备注
    ---------------------------  -------  ------  ------------------------------  ------
    prod_code                    String     20    内部编码
    report_date                  String     20    申报日期
    sh_num                       String     20    股东总户数
    average_hold_sum             Integer    20    户均持股数量
    average_hold_sum_proportion  Float      16.4  户均持股比例
    proportion_change            Float      16.4  相对上一报告期户均持股比例差值
    avg_hold_sum_gr_quarter      Float      16.4  户均持股数季度增长率
    proportion_gr_quarter        Float      16.4  户均持股比例季度增长率
    avg_hold_sum_gr_half_a_year  Float      16.4  户均持股数年增长率
    proportion_gr_half_a_year    Float      16.4  户均持股比例年增长率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'sh_num': 'str', 'average_hold_sum': 'int', 'average_hold_sum_proportion': 'float', 'proportion_change': 'float', 'avg_hold_sum_gr_quarter': 'float', 'proportion_gr_quarter': 'float', 'avg_hold_sum_gr_half_a_year': 'float', 'proportion_gr_half_a_year': 'float'}
    column_name_dict = {'prod_code': '内部编码', 'report_date': '申报日期', 'sh_num': '股东总户数', 'average_hold_sum': '户均持股数量', 'average_hold_sum_proportion': '户均持股比例', 'proportion_change': '相对上一报告期户均持股比例差值', 'avg_hold_sum_gr_quarter': '户均持股数季度增长率', 'proportion_gr_quarter': '户均持股比例季度增长率', 'avg_hold_sum_gr_half_a_year': '户均持股数年增长率', 'proportion_gr_half_a_year': '户均持股比例年增长率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="holder_num", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def restricted_schedule(en_prod_code: str = None, trading_date: str = None, query_direction: str = None, fields: str = None, **kwargs)->Query:
    """
    收录上市公司因为股权分置改革、定向增发、公开增发等原因所限售的股票的具体解禁时间及相关明细数据
    https://udata.hs.net/datas/357/
    <参数>
    名称             类型    必填    说明      备注
    ---------------  ------  ------  --------  ---------------------------------------------------
    en_prod_code     String  否      证劵代码  默认参数为全市场A股股票代码
    trading_date     String  否      交易日期  默认参数为：系统日期
    query_direction  String  否      查询方向  默认参数为0，0-前推最近一条记录，1-后退最近一条记录
    fields           String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                        备注
    -----------------------------  ------  ------  --------------------------  ------
    prod_code                      String    20    证劵代码
    trading_date                   String    20    交易日期
    start_date_for_circulating     String    20    限售解禁日期
    new_circulation_a_shares       Float     16.4  新增流通A股数量
    new_circulation_a_shares_rate  Float     16.4  新增流通A股占已流通A股比例
    accu_circulation_a_shares      Float     16.4  已流通A股数量
    non_circulation_a_shares       Float     16.4  未流通A股数量
    new_circulation_a_shares_type  String    20    新增流通A股类型
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'start_date_for_circulating': 'str', 'new_circulation_a_shares': 'float', 'new_circulation_a_shares_rate': 'float', 'accu_circulation_a_shares': 'float', 'non_circulation_a_shares': 'float', 'new_circulation_a_shares_type': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'start_date_for_circulating': '限售解禁日期', 'new_circulation_a_shares': '新增流通A股数量', 'new_circulation_a_shares_rate': '新增流通A股占已流通A股比例', 'accu_circulation_a_shares': '已流通A股数量', 'non_circulation_a_shares': '未流通A股数量', 'new_circulation_a_shares_type': '新增流通A股类型'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="restricted_schedule", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def holder_pledge(en_prod_code: str = None, trading_date: str = None, serial_number: str = None, fields: str = None, **kwargs)->Query:
    """
    统计股东股权质押明细，包括质押股东名称、质押股数、占总股本比例等字段，支持同时输入多个股票代码
    https://udata.hs.net/datas/358/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ----------------------------------------------
    en_prod_code   String  否      证劵代码  默认参数为：600570.SH
    trading_date   String  否      交易日期  默认参数为：系统日期
    serial_number  String  否      股东序号  股东序号[0-9]，表示第1~10大股东，默认参数为0
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                    备注
    ------------------------  ------  ------  ----------------------  ------
    prod_code                 String    20    证劵代码
    trading_date              String    20    交易日期
    pledge_stock_holder_name  String    20    质押股东名称
    pledge_involved_sum       Float     16.4  质押涉及股数
    pct_of_frozen_pledger     Float     16.4  占冻结质押方持股数比例
    pct_of_total_shares       Float     16.4  占总股本比例
    publ_date                 String    20    股权质押公告日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'pledge_stock_holder_name': 'str', 'pledge_involved_sum': 'float', 'pct_of_frozen_pledger': 'float', 'pct_of_total_shares': 'float', 'publ_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'pledge_stock_holder_name': '质押股东名称', 'pledge_involved_sum': '质押涉及股数', 'pct_of_frozen_pledger': '占冻结质押方持股数比例', 'pct_of_total_shares': '占总股本比例', 'publ_date': '股权质押公告日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="holder_pledge", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def holder_increase(date_type: str = None, symbols: str = None, listed_sector: str = None, secu_market: str = None, share_holder_type: str = None, state_type: float = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司董事、监事、高级管理人员、股东持有本公司股份变动情况分析，可与高管持股进行合并
    https://udata.hs.net/datas/365/
    <参数>
    名称               类型    必填    说明                备注
    -----------------  ------  ------  ------------------  ----------------------------------------------
    date_type          String  否      日期范围类型        默认值为1，1-最近一个有数据的交易日；
    symbols            String  否      股票代码            股票代码，根据交易代码和交易市场组合而成
    listed_sector      String  否      上市板块            1-主板，2-中小板，6-创业板 ，默认查询全部
    secu_market        String  否      市场类型            83-上海，90-深圳，默认查询全部
    share_holder_type  String  否      股东类型            默认取全部,1-高管类型,2-其他类型
    state_type         Float   否      增减持类型          1-增持，2-减持，默认查询全部
    start_date         String  否      公告日开始日期
    end_date           String  否      公告日查询截止日期
    fields             String  否      输出字段集合        默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明                                     备注
    --------------------  ------  ------  ---------------------------------------  ------
    id                    String    20    记录ID
    holder_name           String    20    股东姓名
    leader_name           String    20    领导人姓名
    involved_vol          Float     16.4  变动数量(股)
    pct_chan_ratio        Float     16.4  变动后持股占总股本比例
    pct_of_total_shares   Float     16.4  变动数量占总股本比例(%)
    price_change_ratio    Float     16.4  累计涨跌幅(%)
    publ_date             String    20    公告日期
    secu_abbr             String    20    股票简称
    secu_market           String    20    交易市场
    secu_code             String    20    股票代码
    state_type            Float     16.4  增持类型
    trade_price           Float     16.4  交易价格
    trade_balance         Float     16.4  交易金额(单位：元)
    listed_sector         String    20    上市板块
    tran_date             String    20    股权正式变动日期/过户日期（变动截止日）
    holder_type           String    20    股东类别
    relation_description  String    20    与领导人关系
    involved_chan_vol     Float     16.4  变动后持股数量(股)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'id': 'str', 'holder_name': 'str', 'leader_name': 'str', 'involved_vol': 'float', 'pct_chan_ratio': 'float', 'pct_of_total_shares': 'float', 'price_change_ratio': 'float', 'publ_date': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'secu_code': 'str', 'state_type': 'float', 'trade_price': 'float', 'trade_balance': 'float', 'listed_sector': 'str', 'tran_date': 'str', 'holder_type': 'str', 'relation_description': 'str', 'involved_chan_vol': 'float'}
    column_name_dict = {'id': '记录ID', 'holder_name': '股东姓名', 'leader_name': '领导人姓名', 'involved_vol': '变动数量(股)', 'pct_chan_ratio': '变动后持股占总股本比例', 'pct_of_total_shares': '变动数量占总股本比例(%)', 'price_change_ratio': '累计涨跌幅(%)', 'publ_date': '公告日期', 'secu_abbr': '股票简称', 'secu_market': '交易市场', 'secu_code': '股票代码', 'state_type': '增持类型', 'trade_price': '交易价格', 'trade_balance': '交易金额(单位：元)', 'listed_sector': '上市板块', 'tran_date': '股权正式变动日期/过户日期（变动截止日）', 'holder_type': '股东类别', 'relation_description': '与领导人关系', 'involved_chan_vol': '变动后持股数量(股)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="holder_increase", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def pledge_repo(secu_code: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    1.本表记录的证券范围包括Ａ股股票，不含基金、债券；质押数量包括场内质押和场外质押，深市不包括场内股
    https://udata.hs.net/datas/367/
    <参数>
    名称       类型    必填    说明      备注
    ---------  ------  ------  --------  --------------------
    secu_code  String  否      股票代码  默认参数为：600570
    end_date   String  否      截止日期  默认参数为：最新日期
    fields     String  否      字段集合  1-主板，2-中小企业版
    <返回结果>
    参数名           类型      长度  说明                      备注
    ---------------  ------  ------  ------------------------  ------
    pledge_ratio     Float     16.4  质押比例(%)
    secu_code        String    20    股票代码
    secu_abbr        String    20    证券简称
    end_date         String    20    截止日期
    non_pled_volume  Float     16.4  无限售股份质押数量(万股)
    res_pled_volume  Float     16.4  有限售股份质押数量(万股)
    total_share_a    Float     16.4  A股总股本(万股)
    pledge_num       Float     16.4  质押笔数
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'pledge_ratio': 'float', 'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'non_pled_volume': 'float', 'res_pled_volume': 'float', 'total_share_a': 'float', 'pledge_num': 'float'}
    column_name_dict = {'pledge_ratio': '质押比例(%)', 'secu_code': '股票代码', 'secu_abbr': '证券简称', 'end_date': '截止日期', 'non_pled_volume': '无限售股份质押数量(万股)', 'res_pled_volume': '有限售股份质押数量(万股)', 'total_share_a': 'A股总股本(万股)', 'pledge_num': '质押笔数'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="pledge_repo", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_pledge(secu_code: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    个股股权质押解押明细数据汇总以及所占总股本比例
    https://udata.hs.net/datas/368/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    secu_code   String  否      证券代码  默认取值为：000488
    start_date  String  否      开始日期  默认参数为：系统日期-6个月
    end_date    String  否      截止日期  默认参数为：系统日期
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型      长度  说明                 备注
    ----------------------  ------  ------  -------------------  ----------------
    secu_code               String    20    证券代码
    secu_abbr               String    20    证券简称
    secu_market             String    20    证券市场             83-上海，90-深圳
    info_publ_date          String    20    公告日期
    involved_sum_br_count   Float     16.4  涉及股数_前复权汇总
    proportion_totalshares  Float     16.4  占总股本比例
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'info_publ_date': 'str', 'involved_sum_br_count': 'float', 'proportion_totalshares': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'info_publ_date': '公告日期', 'involved_sum_br_count': '涉及股数_前复权汇总', 'proportion_totalshares': '占总股本比例'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_pledge", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def block_trade(secu_code: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    上市公司最新股本结构变动情况数据，展示大宗交易明细
    https://udata.hs.net/datas/369/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  -------------------------------------------------
    secu_code   String  否      证券代码  默认参数为：600570
    start_date  String  否      开始日期  默认参数为：系统日期-1天，最多只能支持1年内的查询
    end_date    String  否      截止日期  默认参数为：系统日期
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名           类型      长度  说明             备注
    ---------------  ------  ------  ---------------  ----------------------------------------------
    secu_code        String    20    证券代码
    secu_abbr        String    20    证券简称
    secu_market      String    20    证券市场         股票市场：83-上海 90-深圳
    listed_sector    String    20    上市板块         上市板块：1-主板，2-中小板，6-创业板，7-科创板
    secu_category    String    20    证券类型         证券类型：1-A股，2-B股
    info_source      String    20    信息来源
    trade_date       String    20    交易日期
    close_price      Float     16.4  昨收盘
    premium_ratio    Float     16.4  A股溢价率(%)     单位%
    trade_price      Float     16.4  成交价单位元/股
    involved_vol     Float     16.4  成交量单位万/股
    receiver_name    String    20    买方营业部
    transferer_name  String    20    卖方营业部
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'listed_sector': 'str', 'secu_category': 'str', 'info_source': 'str', 'trade_date': 'str', 'close_price': 'float', 'premium_ratio': 'float', 'trade_price': 'float', 'involved_vol': 'float', 'receiver_name': 'str', 'transferer_name': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'listed_sector': '上市板块', 'secu_category': '证券类型', 'info_source': '信息来源', 'trade_date': '交易日期', 'close_price': '昨收盘', 'premium_ratio': 'A股溢价率(%)', 'trade_price': '成交价单位元/股', 'involved_vol': '成交量单位万/股', 'receiver_name': '买方营业部', 'transferer_name': '卖方营业部'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="block_trade", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def margin_trading(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计交易所公布的融资融券每日详细数据，包括融券余额、融资余额、融资买入额、融资偿还额、融券偿还额、融券偿还量等指标
    https://udata.hs.net/datas/370/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      内部编码  默认参数为全市场A股股票代码
    trading_date  String  否      交易日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明          备注
    ------------------------  ------  ------  ------------  ------
    prod_code                 String    20    内部编码
    trading_date              String    20    交易日期
    finance_balance           Float     16.4  融资余额
    security_balance          Float     16.4  融券余额
    finance_buy_balance       Float     16.4  融资买入额
    finance_refund_balance    Float     16.4  融资偿还额
    security_buy_balance      Float     16.4  融券卖出额
    security_refund_balance   Float     16.4  融券偿还额
    security_sell_amount      Float     16.4  融券卖出量
    security_refund_amount    Float     16.4  融券偿还量
    security_amount           Float     16.4  融券余量
    finance_security_balance  Float     16.4  融资融券余额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'finance_balance': 'float', 'security_balance': 'float', 'finance_buy_balance': 'float', 'finance_refund_balance': 'float', 'security_buy_balance': 'float', 'security_refund_balance': 'float', 'security_sell_amount': 'float', 'security_refund_amount': 'float', 'security_amount': 'float', 'finance_security_balance': 'float'}
    column_name_dict = {'prod_code': '内部编码', 'trading_date': '交易日期', 'finance_balance': '融资余额', 'security_balance': '融券余额', 'finance_buy_balance': '融资买入额', 'finance_refund_balance': '融资偿还额', 'security_buy_balance': '融券卖出额', 'security_refund_balance': '融券偿还额', 'security_sell_amount': '融券卖出量', 'security_refund_amount': '融券偿还量', 'security_amount': '融券余量', 'finance_security_balance': '融资融券余额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="margin_trading", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def interval_margin_trading(en_prod_code: str = None, begin_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计交易所公布的融资融券某个时间区间的数据，包含区间融资买入额、区间融资偿还额、区间融券偿还量、区间
    https://udata.hs.net/datas/371/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    begin_date    String  否      起始日期  默认参数为：系统日期-5，格式为YYYY-MM-DD
    end_date      String  否      截止日期  默认参数为：系统日期，格式为YYYY-MM-DD
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                  备注
    -----------------------------  ------  ------  --------------------  ------
    prod_code                      String    20    证劵代码
    begin_date                     String    20    起始日期
    end_date                       String    20    截止日期
    inter_finance_buy_balance      Float     16.4  区间融资买入额
    inter_finance_refund_balance   Float     16.4  区间融资偿还额
    inter_avg_finance_balance      Float     16.4  区间融资余额均值
    inter_security_sell_amount     Float     16.4  区间融券卖出量
    inter_security_refund_amount   Float     16.4  区间融券偿还量
    inter_security_buy_balance     Float     16.4  区间融券卖出额
    inter_security_refund_balance  Float     16.4  区间融券偿还额
    inter_avg_security_amount      Float     16.4  区间融券余量均值
    inter_avg_security_balance     Float     16.4  区间融券余额均值
    avg_finance_security_balance   Float     16.4  区间融资融券余额均值
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'begin_date': 'str', 'end_date': 'str', 'inter_finance_buy_balance': 'float', 'inter_finance_refund_balance': 'float', 'inter_avg_finance_balance': 'float', 'inter_security_sell_amount': 'float', 'inter_security_refund_amount': 'float', 'inter_security_buy_balance': 'float', 'inter_security_refund_balance': 'float', 'inter_avg_security_amount': 'float', 'inter_avg_security_balance': 'float', 'avg_finance_security_balance': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'begin_date': '起始日期', 'end_date': '截止日期', 'inter_finance_buy_balance': '区间融资买入额', 'inter_finance_refund_balance': '区间融资偿还额', 'inter_avg_finance_balance': '区间融资余额均值', 'inter_security_sell_amount': '区间融券卖出量', 'inter_security_refund_amount': '区间融券偿还量', 'inter_security_buy_balance': '区间融券卖出额', 'inter_security_refund_balance': '区间融券偿还额', 'inter_avg_security_amount': '区间融券余量均值', 'inter_avg_security_balance': '区间融券余额均值', 'avg_finance_security_balance': '区间融资融券余额均值'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="interval_margin_trading", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def margin_trade_detail(symbols: str = None, date_type: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    查询股票代码范围内的融资融券历史交易明细统计，包括融资买入，卖出，偿还等基本详细数据
    https://udata.hs.net/datas/372/
    <参数>
    名称        类型    必填    说明          备注
    ----------  ------  ------  ------------  ------------------------------------------------------------------------------------------------------------------------
    symbols     String  否      股票代码      默认参数为：600570.SH
    date_type   String  否      日期类型      默认值为1，1-最近一个有数据的交易日，2-近一个月，3-近三个月，4-近半年，5-近1年；start_date和end_date有值时，此参数无效；
    start_date  String  否      开始日期      默认参数为：系统日期-1年
    end_date    String  否      截止日期      默认开始日期为1年前，并且限定最多只能支持1年范围内的查询
    fields      String  否      输出字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型      长度  说明                         备注
    ----------------------  ------  ------  ---------------------------  ------
    secu_abbr               String    20    证券简称                     单位%
    secu_code               String    20    证券代码                     单位%
    trading_date            String    20    交易日期                     单位%
    trading_balance         Float     16.4  融资融券交易总金额（元）
    secu_in_total_rate      Float     16.4  融券占交易所融券余额比（%）
    security_net_amount     Float     16.4  融券净卖出
    security_refund_amount  Float     16.4  融券偿还量（股）
    security_sell_amount    Float     16.4  融券卖出量（股）
    security_balance        Float     16.4  融券余额（元）
    security_amount         Float     16.4  融券余量（股）               单位%
    fina_in_float_rate      Float     16.4  融资余额占流通市值比例(%)
    secu_in_float_rate      Float     16.4  融券余额占流通市值比例(%)
    fina_in_total_rate      Float     16.4  融资占交易所融资余额比（%）
    finance_buy_balance     Float     16.4  融资买入额（元）
    finance_net_balance     Float     16.4  融资净买入
    finance_refund_balance  Float     16.4  融资偿还额（元）
    finance_balance         Float     16.4  融资余额（元）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_abbr': 'str', 'secu_code': 'str', 'trading_date': 'str', 'trading_balance': 'float', 'secu_in_total_rate': 'float', 'security_net_amount': 'float', 'security_refund_amount': 'float', 'security_sell_amount': 'float', 'security_balance': 'float', 'security_amount': 'float', 'fina_in_float_rate': 'float', 'secu_in_float_rate': 'float', 'fina_in_total_rate': 'float', 'finance_buy_balance': 'float', 'finance_net_balance': 'float', 'finance_refund_balance': 'float', 'finance_balance': 'float'}
    column_name_dict = {'secu_abbr': '证券简称', 'secu_code': '证券代码', 'trading_date': '交易日期', 'trading_balance': '融资融券交易总金额（元）', 'secu_in_total_rate': '融券占交易所融券余额比（%）', 'security_net_amount': '融券净卖出', 'security_refund_amount': '融券偿还量（股）', 'security_sell_amount': '融券卖出量（股）', 'security_balance': '融券余额（元）', 'security_amount': '融券余量（股）', 'fina_in_float_rate': '融资余额占流通市值比例(%)', 'secu_in_float_rate': '融券余额占流通市值比例(%)', 'fina_in_total_rate': '融资占交易所融资余额比（%）', 'finance_buy_balance': '融资买入额（元）', 'finance_net_balance': '融资净买入', 'finance_refund_balance': '融资偿还额（元）', 'finance_balance': '融资余额（元）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="margin_trade_detail", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def margin_trade_total(date_type: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    按市场以及融资融券的4钟类型进行交易历史总量统计，包含融资余额统计信息、融资买入额统计信息、融券余额
    https://udata.hs.net/datas/373/
    <参数>
    名称        类型    必填    说明          备注
    ----------  ------  ------  ------------  ------------------------------------------------------------------------------------------------------------------------
    date_type   String  否      日期类型      默认值为1，1-最近一个有数据的交易日，2-近一个月，3-近三个月，4-近半年，5-近1年；start_date和end_date有值时，此参数无效；
    start_date  String  否      开始日期      默认参数为：系统日期-1年
    end_date    String  否      截止日期      默认参数为：系统日期
    fields      String  否      输出字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                   类型      长度  说明              备注
    -----------------------  ------  ------  ----------------  ------
    trading_date             String    20    交易日期
    sh_finance_balance       Float     16.4  沪融资余额
    sh_finance_buy_balance   Float     16.4  沪融资买入额
    sh_security_balance      Float     16.4  沪融券余额
    sh_trading_balance       Float     16.4  沪融资融券余额
    sz_finance_balance       Float     16.4  深融资余额
    sz_finance_buy_balance   Float     16.4  深融资买入额
    sz_security_balance      Float     16.4  深融券余额
    sz_trading_balance       Float     16.4  深融资融券余额
    tol_finance_balance      Float     16.4  沪深融资余额
    tol_finance_buy_balance  Float     16.4  沪深融资买入额
    tol_security_balance     Float     16.4  沪深融券余额
    tol_trading_balance      Float     16.4  沪深融资融券余额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trading_date': 'str', 'sh_finance_balance': 'float', 'sh_finance_buy_balance': 'float', 'sh_security_balance': 'float', 'sh_trading_balance': 'float', 'sz_finance_balance': 'float', 'sz_finance_buy_balance': 'float', 'sz_security_balance': 'float', 'sz_trading_balance': 'float', 'tol_finance_balance': 'float', 'tol_finance_buy_balance': 'float', 'tol_security_balance': 'float', 'tol_trading_balance': 'float'}
    column_name_dict = {'trading_date': '交易日期', 'sh_finance_balance': '沪融资余额', 'sh_finance_buy_balance': '沪融资买入额', 'sh_security_balance': '沪融券余额', 'sh_trading_balance': '沪融资融券余额', 'sz_finance_balance': '深融资余额', 'sz_finance_buy_balance': '深融资买入额', 'sz_security_balance': '深融券余额', 'sz_trading_balance': '深融资融券余额', 'tol_finance_balance': '沪深融资余额', 'tol_finance_buy_balance': '沪深融资买入额', 'tol_security_balance': '沪深融券余额', 'tol_trading_balance': '沪深融资融券余额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="margin_trade_total", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_dividend(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司历次分红基本信息，包括每股送转，每股转增股本、每股股利等指标；
    https://udata.hs.net/datas/374/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    report_date   String  否      申报日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                     备注
    ------------------------  ------  ------  -----------------------  ------
    prod_code                 String    20    证劵代码
    per_ending_original_cost  Float     16.4  每股送转
    per_bonus_share_ratio     Float     16.4  每股送股比例
    per_tran_add_share_ratio  Float     16.4  每股转增股比例
    cash_divi_rmb             Float     16.4  派现(含税/人民币元)
    actual_cash_divi_rmb      Float     16.4  实派(税后/人民币元)
    pre_disclosure_date       String    20    预披露公告日
    advance_date              String    20    预约日期
    announcement_date         String    20    决案公告日
    divi_impl_date            String    20    分红实施公告日
    right_reg_date            String    20    股权登记日
    ex_divi_date              String    20    除权除息日
    bonus_share_list_date     String    20    送转股上市日
    payout_date               String    20    股息到帐日期/红利发放日
    final_trade_date          String    20    最后交易日
    procedure_desc            String    20    分红方案进度
    divi_object               String    20    分红对象
    if_dividend               String    20    是否分红
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'per_ending_original_cost': 'float', 'per_bonus_share_ratio': 'float', 'per_tran_add_share_ratio': 'float', 'cash_divi_rmb': 'float', 'actual_cash_divi_rmb': 'float', 'pre_disclosure_date': 'str', 'advance_date': 'str', 'announcement_date': 'str', 'divi_impl_date': 'str', 'right_reg_date': 'str', 'ex_divi_date': 'str', 'bonus_share_list_date': 'str', 'payout_date': 'str', 'final_trade_date': 'str', 'procedure_desc': 'str', 'divi_object': 'str', 'if_dividend': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'per_ending_original_cost': '每股送转', 'per_bonus_share_ratio': '每股送股比例', 'per_tran_add_share_ratio': '每股转增股比例', 'cash_divi_rmb': '派现(含税/人民币元)', 'actual_cash_divi_rmb': '实派(税后/人民币元)', 'pre_disclosure_date': '预披露公告日', 'advance_date': '预约日期', 'announcement_date': '决案公告日', 'divi_impl_date': '分红实施公告日', 'right_reg_date': '股权登记日', 'ex_divi_date': '除权除息日', 'bonus_share_list_date': '送转股上市日', 'payout_date': '股息到帐日期/红利发放日', 'final_trade_date': '最后交易日', 'procedure_desc': '分红方案进度', 'divi_object': '分红对象', 'if_dividend': '是否分红'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_dividend", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_additional(en_prod_code: str = None, year: str = None, issue_type: str = None, fields: str = None, **kwargs)->Query:
    """
    统计公司历次增发明细信息，包括增发方案内容、进程、实施进度、承销商等信息，支持同时输入多个股票代码或
    https://udata.hs.net/datas/375/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    year          String  否      年度      默认参数为：2021
    issue_type    String  否      认购方式  默认参数为0，0-资产认购，1-现金认购
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                           类型      长度  说明                          备注
    -------------------------------  ------  ------  ----------------------------  ------
    prod_code                        String    20    证劵代码
    year                             String    20    年度
    spo_event_procedure              String    20    事件进程
    issue_purpose                    String    20    增发目的
    issue_price                      String    20    增发价格
    issue_vol                        Float     16.4  增发数量
    ipo_proceeds                     Float     16.4  增发新股募集资金总额
    net_proceeds                     Float     16.4  增发新股募集资金净额
    advance_date                     String    20    预约日期
    shareholders_publ_date           String    20    股东大会公告日
    prospectus_publ_date             String    20    增发公告日
    sasac_approval_publ_date         String    20    国资委通过公告日
    csrc_approval_publ_date          String    20    证监会批准公告日
    list_announce_date               String    20    增发新股上市公告日期
    price_adjusted_date              String    20    最新发行价调整日
    online_issue_date                String    20    上网公开发行日期
    otc_date                         String    20    向网下增发日期
    sni_list_date                    String    20    增发股份上市日期
    orig_holder_preferred_date       String    20    老股东优先配售日期
    result_date                      String    20    发行结果公示日
    scheme_change_publ_date          String    20    方案变动公告日
    scheme_change_statement          String    20    方案变动说明
    scheme_change_type               String    20    方案变动类型
    issue_price_ceiling              Float     16.4  发行价格上限
    issue_price_floor                Float     16.4  发行价格下限
    adjusted_issue_price             Float     16.4  调整后发行价格下降
    referring_price                  Float     16.4  承销商指导价格
    underwriting_fee                 Float     16.4  承销费用
    pe_ratio_before_issue            Float     16.4  增发市盈率（按增发前总股本）
    tailored_issue_vol_legal_person  Float     16.4  法人定向配售股数
    staq_net_issue_vol               Float     16.4  STAQ/NET定向配售股数
    fund_issue_vol                   Float     16.4  投资基金配售股数
    main_income_forecast             Float     16.4  主营业务收入预测
    net_profit_forecast              Float     16.4  净利润预测
    diluted_eps_forecast             Float     16.4  全面摊薄每股盈利预测
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'year': 'str', 'spo_event_procedure': 'str', 'issue_purpose': 'str', 'issue_price': 'str', 'issue_vol': 'float', 'ipo_proceeds': 'float', 'net_proceeds': 'float', 'advance_date': 'str', 'shareholders_publ_date': 'str', 'prospectus_publ_date': 'str', 'sasac_approval_publ_date': 'str', 'csrc_approval_publ_date': 'str', 'list_announce_date': 'str', 'price_adjusted_date': 'str', 'online_issue_date': 'str', 'otc_date': 'str', 'sni_list_date': 'str', 'orig_holder_preferred_date': 'str', 'result_date': 'str', 'scheme_change_publ_date': 'str', 'scheme_change_statement': 'str', 'scheme_change_type': 'str', 'issue_price_ceiling': 'float', 'issue_price_floor': 'float', 'adjusted_issue_price': 'float', 'referring_price': 'float', 'underwriting_fee': 'float', 'pe_ratio_before_issue': 'float', 'tailored_issue_vol_legal_person': 'float', 'staq_net_issue_vol': 'float', 'fund_issue_vol': 'float', 'main_income_forecast': 'float', 'net_profit_forecast': 'float', 'diluted_eps_forecast': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'year': '年度', 'spo_event_procedure': '事件进程', 'issue_purpose': '增发目的', 'issue_price': '增发价格', 'issue_vol': '增发数量', 'ipo_proceeds': '增发新股募集资金总额', 'net_proceeds': '增发新股募集资金净额', 'advance_date': '预约日期', 'shareholders_publ_date': '股东大会公告日', 'prospectus_publ_date': '增发公告日', 'sasac_approval_publ_date': '国资委通过公告日', 'csrc_approval_publ_date': '证监会批准公告日', 'list_announce_date': '增发新股上市公告日期', 'price_adjusted_date': '最新发行价调整日', 'online_issue_date': '上网公开发行日期', 'otc_date': '向网下增发日期', 'sni_list_date': '增发股份上市日期', 'orig_holder_preferred_date': '老股东优先配售日期', 'result_date': '发行结果公示日', 'scheme_change_publ_date': '方案变动公告日', 'scheme_change_statement': '方案变动说明', 'scheme_change_type': '方案变动类型', 'issue_price_ceiling': '发行价格上限', 'issue_price_floor': '发行价格下限', 'adjusted_issue_price': '调整后发行价格下降', 'referring_price': '承销商指导价格', 'underwriting_fee': '承销费用', 'pe_ratio_before_issue': '增发市盈率（按增发前总股本）', 'tailored_issue_vol_legal_person': '法人定向配售股数', 'staq_net_issue_vol': 'STAQ/NET定向配售股数', 'fund_issue_vol': '投资基金配售股数', 'main_income_forecast': '主营业务收入预测', 'net_profit_forecast': '净利润预测', 'diluted_eps_forecast': '全面摊薄每股盈利预测'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_additional", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_additional_all(en_prod_code: str = None, trading_date: str = None, spo_process: str = None, fields: str = None, **kwargs)->Query:
    """
    统计股票上市以来增发概况，包括增发总次数、成功次数、失败次数、累计募集资金总额等指标
    https://udata.hs.net/datas/376/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    trading_date  String  否      交易日期  默认参数为：2020-12-31
    spo_process   String  否      增发进程  默认值为0，0-已成功，1-已失败，2-进行中，3-全部
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名             类型      长度  说明                  备注
    -----------------  ------  ------  --------------------  ------
    prod_code          String    20    证劵代码
    trading_date       String    20    交易日期
    spo_num            Float     16.4  增发总次数
    spo_num_success    Float     16.4  增发已成功次数
    spo_num_fail       Float     16.4  增发已失败次数
    spo_num_going      Float     16.4  增发进行中次数
    accu_ipo_proceeds  Float     16.4  增发累计募集资金总额
    accu_net_proceeds  Float     16.4  增发累计募集资金净额
    accu_issue_cost    Float     16.4  增发累计费用总额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'spo_num': 'float', 'spo_num_success': 'float', 'spo_num_fail': 'float', 'spo_num_going': 'float', 'accu_ipo_proceeds': 'float', 'accu_net_proceeds': 'float', 'accu_issue_cost': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'spo_num': '增发总次数', 'spo_num_success': '增发已成功次数', 'spo_num_fail': '增发已失败次数', 'spo_num_going': '增发进行中次数', 'accu_ipo_proceeds': '增发累计募集资金总额', 'accu_net_proceeds': '增发累计募集资金净额', 'accu_issue_cost': '增发累计费用总额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_additional_all", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_allotment(en_prod_code: str = None, year: str = None, fields: str = None, **kwargs)->Query:
    """
    统计公司历次配股方案信息，支持同时输入多个股票代码和查询年度
    https://udata.hs.net/datas/378/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    year          String  否      年度      默认参数为：2020
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                  备注
    --------------------------  ------  ------  --------------------  ------
    prod_code                   String    20    证劵代码
    year                        String    20    年度
    actual_allot_ratio          Float     16.4  实际配股比例(10配X)
    allot_price                 Float     16.4  每股配股价格
    actual_allot_vol            Float     16.4  实际配股数量
    ipo_proceeds                Float     16.4  募集资金总额
    issue_cost                  String    20    发行费用总额
    allot_price_ceiling         Float     16.4  配股价格上限
    allot_price_floor           Float     16.4  配股价格下限
    base_vol                    Float     16.4  配股股本基数
    transfer_allot_ratio        Float     16.4  转配比(10转配X)
    planned_allot_ratio         Float     16.4  计划配股比例（10配X)
    planned_allot_vol           Float     16.4  计划配股数量
    advance_date                Float     16.4  预约日期
    shareholders_publ_date      String    20    股东大会公告日期
    allot_prospectus_publ_date  String    20    配股公告日期
    right_reg_date              String    20    股权登记日
    ex_right_date               String    20    除权日
    allot_start_date            String    20    配股交款起始日
    allot_end_date              String    20    配股交款截止日
    fund_to_account_date        String    20    资金到帐日
    allot_list_date             String    20    配股上市日
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'year': 'str', 'actual_allot_ratio': 'float', 'allot_price': 'float', 'actual_allot_vol': 'float', 'ipo_proceeds': 'float', 'issue_cost': 'str', 'allot_price_ceiling': 'float', 'allot_price_floor': 'float', 'base_vol': 'float', 'transfer_allot_ratio': 'float', 'planned_allot_ratio': 'float', 'planned_allot_vol': 'float', 'advance_date': 'float', 'shareholders_publ_date': 'str', 'allot_prospectus_publ_date': 'str', 'right_reg_date': 'str', 'ex_right_date': 'str', 'allot_start_date': 'str', 'allot_end_date': 'str', 'fund_to_account_date': 'str', 'allot_list_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'year': '年度', 'actual_allot_ratio': '实际配股比例(10配X)', 'allot_price': '每股配股价格', 'actual_allot_vol': '实际配股数量', 'ipo_proceeds': '募集资金总额', 'issue_cost': '发行费用总额', 'allot_price_ceiling': '配股价格上限', 'allot_price_floor': '配股价格下限', 'base_vol': '配股股本基数', 'transfer_allot_ratio': '转配比(10转配X)', 'planned_allot_ratio': '计划配股比例（10配X)', 'planned_allot_vol': '计划配股数量', 'advance_date': '预约日期', 'shareholders_publ_date': '股东大会公告日期', 'allot_prospectus_publ_date': '配股公告日期', 'right_reg_date': '股权登记日', 'ex_right_date': '除权日', 'allot_start_date': '配股交款起始日', 'allot_end_date': '配股交款截止日', 'fund_to_account_date': '资金到帐日', 'allot_list_date': '配股上市日'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_allotment", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_asforecastabb(secu_code: str = None, forcast_type: str = None, forecast_object: str = None, egrowth_rate_floor: str = None, fields: str = None, **kwargs)->Query:
    """
    展示A股公司业务最新预告
    https://udata.hs.net/datas/542/
    <参数>
    名称                类型    必填    说明                 备注
    ------------------  ------  ------  -------------------  ----------------------------------------------
    secu_code           String  否      证券代码             默认查询全部
    forcast_type        String  否      业绩预计类型         默认参数为：4
    forecast_object     String  否      预告对象             默认参数为：10,13
    egrowth_rate_floor  String  否      预计幅度起始(%)大于  默认参数为：20
    fields              String  否      字段集合             默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明              备注
    --------------------  ------  ------  ----------------  ---------------------------------------
    secu_code             String    20    证券代码
    secu_abbr             String    20    证券简称
    end_date              String    20    截止日期
    forcast_type          String    20    业绩预计类型
    forecast_object       String    20    预告对象
    forcast_content       String   200    业绩预计内容描述
    egrowth_rate_floor    String    20    变动幅度下限      预计幅度起始(%)
    egrowth_rate_ceiling  String    20    变动幅度上限      预计幅度截止(%)
    eprofit_floor         String    20    预计净利润下限    预计净利润起始(元)，当预计对象为10,13。
    eprofit_ceiling       String    20    预计净利润上限    预计净利润截止(元)，当预计对象为10,13。
    eearning_floor        Float     16.4  预计收入起始(元)  预计收入起始(元)，当预计对象为20,23。
    eearning_ceiling      Float     16.4  预计收入截止(元)  预计收入截止(元)，当预计对象为20,23。
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'forcast_type': 'str', 'forecast_object': 'str', 'forcast_content': 'str', 'egrowth_rate_floor': 'str', 'egrowth_rate_ceiling': 'str', 'eprofit_floor': 'str', 'eprofit_ceiling': 'str', 'eearning_floor': 'float', 'eearning_ceiling': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'end_date': '截止日期', 'forcast_type': '业绩预计类型', 'forecast_object': '预告对象', 'forcast_content': '业绩预计内容描述', 'egrowth_rate_floor': '变动幅度下限', 'egrowth_rate_ceiling': '变动幅度上限', 'eprofit_floor': '预计净利润下限', 'eprofit_ceiling': '预计净利润上限', 'eearning_floor': '预计收入起始(元)', 'eearning_ceiling': '预计收入截止(元)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_asforecastabb", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_asunderweight(secu_code: str = None, fields: str = None, **kwargs)->Query:
    """
    展示减持计划列表，按首次计划公告日倒序
    https://udata.hs.net/datas/543/
    <参数>
    名称       类型    必填    说明      备注
    ---------  ------  ------  --------  ----------------------------------------------
    secu_code  String  否      证券代码  默认查询全部
    fields     String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型      长度  说明              备注
    ----------------------  ------  ------  ----------------  ------
    secu_code               String      20  证券代码
    secu_abbr               String      20  证券简称
    sh_name                 String      20  股东名称
    serial_number           String      20  股东序号
    event_info              String     200  事件描述
    initial_info_publ_date  String      20  首次信息发布日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'sh_name': 'str', 'serial_number': 'str', 'event_info': 'str', 'initial_info_publ_date': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'sh_name': '股东名称', 'serial_number': '股东序号', 'event_info': '事件描述', 'initial_info_publ_date': '首次信息发布日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_asunderweight", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_asoverweight(secu_code: str = None, fields: str = None, **kwargs)->Query:
    """
    展示最新存续期内的增持计划。 超6个月未实现的计划剔除。按首次计划日期倒序
    https://udata.hs.net/datas/544/
    <参数>
    名称       类型    必填    说明      备注
    ---------  ------  ------  --------  ----------------------------------------------
    secu_code  String  否      证券代码  默认查询全部
    fields     String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                   备注
    ------------------------  ------  ------  ---------------------  ------
    secu_code                 String    20    证券代码
    secu_abbr                 String    20    证券简称
    initial_info_publ_date    String    20    首次信息发布日期
    sh_name                   String    20    股东名称
    serial_number             String    20    股东序号
    add_hold_time             String    20    增持时间描述
    add_hold_term             Float     16.4  增持实施期限
    end_date                  String    20    截止日期
    add_hold_price_statement  String    20    增持价格描述
    add_hold_share_ceiling    Float     16.4  增持股份数量上限
    add_hold_ratio_ceiling    Float     16.4  增持比例上限-占总股本
    add_hold_share_min        Float     16.4  增持股份数量下限
    add_hold_ratio_min        Float     16.4  增持比例下限-占总股本
    add_hold_statement        String    20    增持计划说明
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'initial_info_publ_date': 'str', 'sh_name': 'str', 'serial_number': 'str', 'add_hold_time': 'str', 'add_hold_term': 'float', 'end_date': 'str', 'add_hold_price_statement': 'str', 'add_hold_share_ceiling': 'float', 'add_hold_ratio_ceiling': 'float', 'add_hold_share_min': 'float', 'add_hold_ratio_min': 'float', 'add_hold_statement': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'initial_info_publ_date': '首次信息发布日期', 'sh_name': '股东名称', 'serial_number': '股东序号', 'add_hold_time': '增持时间描述', 'add_hold_term': '增持实施期限', 'end_date': '截止日期', 'add_hold_price_statement': '增持价格描述', 'add_hold_share_ceiling': '增持股份数量上限', 'add_hold_ratio_ceiling': '增持比例上限-占总股本', 'add_hold_share_min': '增持股份数量下限', 'add_hold_ratio_min': '增持比例下限-占总股本', 'add_hold_statement': '增持计划说明'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_asoverweight", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_asrighttransfer(secu_code: str = None, year: str = None, tran_mode: str = None, fields: str = None, **kwargs)->Query:
    """
    展示股权转让交易与交易双方，并显示转让类型。标记第1大股东序号是否变更。按公告日期倒序
    https://udata.hs.net/datas/545/
    <参数>
    名称       类型    必填    说明          备注
    ---------  ------  ------  ------------  ----------------------------------------------
    secu_code  String  否      证券代码      默认查询全部
    year       String  否      年度          默认取1年以内股权转让
    tran_mode  String  否      股权转让方式  默认参数为：2-协议划转
    fields     String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明               备注
    -------------------  ------  ------  -----------------  ------
    secu_code            String    20    证券代码
    secu_abbr            String    20    证券简称
    info_publ_date       String    20    发布日期
    tran_mode            String    20    股权转让方式
    deal_price           Float     16.4  交易价格(元/股)
    pledge_involved_sum  Float     16.4  涉及股数(股)
    pct_of_total_shares  Float     16.4  占总股本比例(%)
    transferer_name      String    20    股权出让方名称
    tran_date            String    20    过户日期
    receiver_name        String    20    股权受让方名称
    if_snafter_tran      String    20    是否第1大股东变更
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'info_publ_date': 'str', 'tran_mode': 'str', 'deal_price': 'float', 'pledge_involved_sum': 'float', 'pct_of_total_shares': 'float', 'transferer_name': 'str', 'tran_date': 'str', 'receiver_name': 'str', 'if_snafter_tran': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'info_publ_date': '发布日期', 'tran_mode': '股权转让方式', 'deal_price': '交易价格(元/股)', 'pledge_involved_sum': '涉及股数(股)', 'pct_of_total_shares': '占总股本比例(%)', 'transferer_name': '股权出让方名称', 'tran_date': '过户日期', 'receiver_name': '股权受让方名称', 'if_snafter_tran': '是否第1大股东变更'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_asrighttransfer", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_asraising(tran_mode: str = None, fields: str = None, **kwargs)->Query:
    """
    举牌：受让达5% ；1、取12个月内有举牌的股票。 2、取入选股票，最近一个公告及占股比较大的举牌方，计算举牌方累计股票数及累计交易占比，及举牌方举牌日持有股占比
    https://udata.hs.net/datas/546/
    <参数>
    名称       类型    必填    说明          备注
    ---------  ------  ------  ------------  ------------------------------------------------
    tran_mode  String  否      股权转让方式  反向剔除，不入参默认剔除1-协议转让，7-股东更名。
    fields     String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明                    备注
    -------------------  ------  ------  ----------------------  ------
    secu_code            String    20    证券代码
    secu_abbr            String    20    证券简称
    end_date             String    20    截止日期
    after_rece           Float     16.4  举牌方持股比例
    receiver_name        String    20    举牌方
    start_date           String    20    开始日期
    date_rang            String    20    周期
    pledge_involved_sum  Float     16.4  周期内累计交易股数(股)
    pct_of_total_shares  Float     16.4  周期内累计占比
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'after_rece': 'float', 'receiver_name': 'str', 'start_date': 'str', 'date_rang': 'str', 'pledge_involved_sum': 'float', 'pct_of_total_shares': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'end_date': '截止日期', 'after_rece': '举牌方持股比例', 'receiver_name': '举牌方', 'start_date': '开始日期', 'date_rang': '周期', 'pledge_involved_sum': '周期内累计交易股数(股)', 'pct_of_total_shares': '周期内累计占比'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_asraising", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_share_holders(en_prod_code: str = None, trading_date: str = None, unit: int = None, fields: str = None, **kwargs)->Query:
    """
    展示A股上市公司股本构成，包括总股本、A股（无限售流通A股）与B股。
    https://udata.hs.net/datas/646/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  ------------------
    en_prod_code  String   否      股票代码
    trading_date  String   否      交易日期  交易日期默认取最新
    unit          Integer  否      单位      默认取0
    fields        String   否      字段集合
    <返回结果>
    参数名                   类型      长度  说明                           备注
    -----------------------  ------  ------  -----------------------------  ------
    en_prod_code             String    20    股票代码
    trading_date             String    20    交易日期
    total_shares             Float     16.4  总股本
    a_shares                 Float     16.4  A股合计（股）
    non_restricted_a_shares  Float     16.4  其中：无限售条件的流通A股(股)
    b_shares                 Float     16.4  B股合计（股）
    circulation_b_shares     Float     16.4  其中：流通B股（股）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'en_prod_code': 'str', 'trading_date': 'str', 'total_shares': 'float', 'a_shares': 'float', 'non_restricted_a_shares': 'float', 'b_shares': 'float', 'circulation_b_shares': 'float'}
    column_name_dict = {'en_prod_code': '股票代码', 'trading_date': '交易日期', 'total_shares': '总股本', 'a_shares': 'A股合计（股）', 'non_restricted_a_shares': '其中：无限售条件的流通A股(股)', 'b_shares': 'B股合计（股）', 'circulation_b_shares': '其中：流通B股（股）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_share_holders", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_special_tradedate(secu_code: str = None, start_date: str = None, end_date: str = None, special_trade_type: str = None, fields: str = None, **kwargs)->Query:
    """
    证券被特别处理(或撤销)的相关信息，包括暂停上市、恢复上市、终止上市、代办转让、ST、PT、*ST、撤销ST、撤销PT、撤销*ST。 更新频率： 不定时更新
    https://udata.hs.net/datas/647/
    <参数>
    名称                类型    必填    说明                  备注
    ------------------  ------  ------  --------------------  -----------------------------------------------------------------------------------------------------------------------------------------------------------
    secu_code           String  否      证券代码              股票代码，如600570
    start_date          String  否      开始日期              开始日期，如2018-11-01
    end_date            String  否      截止日期              截止日期，如2018-12-01
    special_trade_type  String  否      特别处理(或撤销)类别  特别处理(或撤销)类别（不入参，默认全部），入参1-ST，2-撤销ST，3-PT，4-撤销PT，5-ST，6-撤销ST，7-撤消ST并实行ST，8-从ST变为ST，9-退市整理期，10-高风险警示。
    fields              String  否      字段集合
    <返回结果>
    参数名              类型      长度  说明                      备注
    ------------------  ------  ------  ------------------------  ------------------------
    secu_code           String      20  证券代码                  证券代码
    secu_abbr           String      20  证券简称                  证券简称
    special_trade_time  String      20  特别处理(或撤销)实施日期  特别处理(或撤销)实施日期
    special_trade_type  String      20  特别处理(或撤销)类别      特别处理(或撤销)类别
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'special_trade_time': 'str', 'special_trade_type': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'special_trade_time': '特别处理(或撤销)实施日期', 'special_trade_type': '特别处理(或撤销)类别'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_special_tradedate", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_org_rate(secu_code: str = None, rate_type: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    提供机构评级以及详情，支持个股，以及全市场，包含科创板数据。
    https://udata.hs.net/datas/648/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  -----------------------------------------------------------------------
    secu_code   String  否      证券代码  入参只支持单代码输入，如 600570 。不入参默认取全部
    rate_type   String  否      评级类型  评级类型，默认取全部，其中：10-买入，13-增持，20-中性，30-减持，33-卖出
    start_date  String  否      开始日期  撰写日期的开始日期，如：2019-06-01 。不入参默认取三月内数据
    end_date    String  否      截止日期  撰写日期的截止日期，如：2019-09-01 。不入参默认取当日
    fields      String  否      字段集合
    <返回结果>
    参数名          类型      长度  说明          备注
    --------------  ------  ------  ------------  ---------------------------------------------------------
    secu_code       String    20    证券代码      股票代码
    secu_abbr       String    20    证券简称      股票简称
    secu_market     String    20    证券市场      股票市场
    writing_date    String    20    撰写日期      撰写日期
    org_name        String    20    机构名称      机构名称
    title           String    20    标题          研报标题
    author          String    20    物权作者      物权作者（该字段只有当输入参数secu_code不为空的时候才有）
    conclusion      String    20    报告结论      报告结论（该字段只有当输入参数secu_code不为空的时候才有）
    rate_type_name  String    20    评级类型名称  评级类型名称
    rate_type       String    16.4  评级类型      评级类型
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'writing_date': 'str', 'org_name': 'str', 'title': 'str', 'author': 'str', 'conclusion': 'str', 'rate_type_name': 'str', 'rate_type': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'writing_date': '撰写日期', 'org_name': '机构名称', 'title': '标题', 'author': '物权作者', 'conclusion': '报告结论', 'rate_type_name': '评级类型名称', 'rate_type': '评级类型'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_org_rate", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_org_rate_sum(date_type: str = None, secu_code: str = None, fields: str = None, **kwargs)->Query:
    """
    个股机构评级统计。
    https://udata.hs.net/datas/649/
    <参数>
    名称       类型    必填    说明      备注
    ---------  ------  ------  --------  -----------------------------------------------------------
    date_type  String  否      类型      日期类型 默认为1: 1：近三个月 2：近六个月 3：近1年 4：近2年
    secu_code  String  否      证券代码  股票代码，不支持多个，只能输入单代码，如 600570
    fields     String  否      字段集合
    <返回结果>
    参数名        类型      长度  说明          备注
    ------------  ------  ------  ------------  ------------------------------
    secu_market   String      20  证券市场      股票市场：83-上交所；90-深交所
    secu_code     String      20  证券代码      股票代码
    secu_abbr     String      20  证券简称      股票简称
    buy_sum       String      20  买入额        买入评级合计
    increase_sum  String      20  增持评级合计  增持评级合计
    neutral_sum   String      20  中性评级合计  中性评级合计
    reduce_sum    String      20  减持评级合计  减持评级合计
    sale_sum      String      20  卖出额        卖出评级合计
    total_sum     String      20  评级合计      评级合计
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'buy_sum': 'str', 'increase_sum': 'str', 'neutral_sum': 'str', 'reduce_sum': 'str', 'sale_sum': 'str', 'total_sum': 'str'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'buy_sum': '买入额', 'increase_sum': '增持评级合计', 'neutral_sum': '中性评级合计', 'reduce_sum': '减持评级合计', 'sale_sum': '卖出额', 'total_sum': '评级合计'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_org_rate_sum", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_investor_statistics(symbols: str = None, secu_market: str = None, listed_sector: str = None, start_date: str = None, end_date: str = None, event_id: str = None, fields: str = None, **kwargs)->Query:
    """
    获取A股机构调研活动统计，统计本期时间范围内机构调研买卖方数量，热度关系。
    https://udata.hs.net/datas/650/
    <参数>
    名称           类型    必填    说明          备注
    -------------  ------  ------  ------------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    symbols        String  否      股票代码集    "支持多参数，各个参数之间以逗号相隔， 参数最多不能超过20个，输入参数的代码必须以市场后缀结尾，例如 上海：SH,SS 深圳：SZ 注意:当同时输入一个正确代码和一个错误代码时，会提示当前输入的股票代码错误，返回错误信息。"
    secu_market    String  否      市场类型      83-上海，90-深圳 若不送默认查询全部
    listed_sector  String  否      上市板类型    1-主板，2-中小板，6-创业板 若不送，默认查询全部
    start_date     String  否      开始日期      格式"2017-03-15"或者"20170315" 查询开始日期，如果开始日期输入，截止日期不送，默认截止日为开始日1年后，并且限定最多只能支持1年范围内的查询"
    end_date       String  否      截止日期      "格式"2017-03-15"或者"20170315" 查询截止日期，如果开始日期不送，截止日期送，默认开始日期为截止日1年前，并且限定最多只能支持1年范围内的查询"
    event_id       String  否      事件ID
    fields         String  否      输出字段集合  支持多参数，各个参数之间以逗号相隔,如有重复，重复参数将被去除 说明：该输入字段可以指定输出字段 不送默认输出全部字段
    <返回结果>
    参数名         类型      长度  说明                  备注
    -------------  ------  ------  --------------------  --------------------------
    event_id       String      20  事件ID
    inner_code     String      20  证券内部代码
    secu_abbr      String      20  股票简称
    secu_code      String      20  股票代码
    secu_market    String      20  交易市场              83-上海 90-深圳
    publ_date      String      20  信息发布日期
    title          String      20  标题
    listed_sector  String      20  上市板类型            1-主板，2-中小板，6-创业板
    buy_num        String      20  买方机构数量
    sell_num       String      20  卖方机构数量
    parly_num      String      20  参与本次调研机构数量
    survey_date    String      20  调研日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'event_id': 'str', 'inner_code': 'str', 'secu_abbr': 'str', 'secu_code': 'str', 'secu_market': 'str', 'publ_date': 'str', 'title': 'str', 'listed_sector': 'str', 'buy_num': 'str', 'sell_num': 'str', 'parly_num': 'str', 'survey_date': 'str'}
    column_name_dict = {'event_id': '事件ID', 'inner_code': '证券内部代码', 'secu_abbr': '股票简称', 'secu_code': '股票代码', 'secu_market': '交易市场', 'publ_date': '信息发布日期', 'title': '标题', 'listed_sector': '上市板类型', 'buy_num': '买方机构数量', 'sell_num': '卖方机构数量', 'parly_num': '参与本次调研机构数量', 'survey_date': '调研日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_investor_statistics", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_investor_detail(symbols: str = None, secu_market: str = None, listed_sector: str = None, date_type: str = None, start_date: str = None, end_date: str = None, event_id: str = None, fields: str = None, **kwargs)->Query:
    """
    获取A股机构调研活动明细信息，根据机构调研统计事件ID进行详细明细查询，包含调研单位，人员信息等。
    https://udata.hs.net/datas/651/
    <参数>
    名称           类型    必填    说明          备注
    -------------  ------  ------  ------------  ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    symbols        String  否      股票代码集    支持多参数，各个参数之间以逗号相隔， 参数最多不能超过20个，输入参数的代码必须以市场后缀结尾，例如 上海：SH,SS 深圳：SZ 注意:当同时输入一个正确代码和一个错误代码时，会提示当前输入的股票代码错误，返回错误信息。
    secu_market    String  否      市场类型      83-上海，90-深圳 若不送默认查询全部
    listed_sector  String  否      上市板类型    1-主板，2-中小板，6-创业板 若不送，默认查询全部
    date_type      String  否      日期范围类型  日期类型可设定start_date开始和end_date结束日期的值，若用户输入了开始日期start_date和结束日期end_date，此日期类型date_type字段输入任何值无效。 date_type=1表示获取最近一个有数据的交易日， date_type=2表示获取近一个月， date_type=3表示获取近三个月， date_type=4表示获取近半年， date_type=5表示查询近1年， 如果不送date_type默认值为1
    start_date     String  否      开始日期      格式"2017-03-15"或者"20170315" 查询开始日期，如果开始日期输入，截止日期不送，默认截止日为开始日1年后，并且限定最多只能支持1年范围内的查询
    end_date       String  否      截止日期      格式"2017-03-15"或者"20170315" 查询截止日期，如果开始日期不送，截止日期送，默认开始日期为截止日1年前，并且限定最多只能支持1年范围内的查询
    event_id       String  否      事件ID
    fields         String  否      输出字段集合  支持多参数，各个参数之间以逗号相隔,如有重复，重复参数将被去除 说明：该输入字段可以指定输出字段 不送默认输出全部字段
    <返回结果>
    参数名          类型      长度  说明                备注
    --------------  ------  ------  ------------------  --------------------------
    event_id        String      20  事件ID
    inner_code      String      20  证券内部代码
    secu_abbr       String      20  股票简称
    secu_code       String      20  股票代码
    secu_market     String      20  交易市场            股票市场 83-上海 90-深圳
    content         String      20  主要内容
    publ_date       String      20  信息发布日期
    title           String      20  标题
    listed_sector   String      20  上市板类型          1-主板，2-中小板，6-创业板
    listing_creper  String      20  上市公司接待人员
    place           String      20  地点
    participants    对象        20  参与单位及人员集合
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'event_id': 'str', 'inner_code': 'str', 'secu_abbr': 'str', 'secu_code': 'str', 'secu_market': 'str', 'content': 'str', 'publ_date': 'str', 'title': 'str', 'listed_sector': 'str', 'listing_creper': 'str', 'place': 'str', 'participants': 'str'}
    column_name_dict = {'event_id': '事件ID', 'inner_code': '证券内部代码', 'secu_abbr': '股票简称', 'secu_code': '股票代码', 'secu_market': '交易市场', 'content': '主要内容', 'publ_date': '信息发布日期', 'title': '标题', 'listed_sector': '上市板类型', 'listing_creper': '上市公司接待人员', 'place': '地点', 'participants': '参与单位及人员集合'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_investor_detail", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_financial_industry_list(secu_code: str = None, standard: str = None, first_industry_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取金融行业的股票代码列表，默认证监会金融业。包括科创板数据。
    https://udata.hs.net/datas/652/
    <参数>
    名称                 类型    必填    说明          备注
    -------------------  ------  ------  ------------  -----------------------------------------------------------------------------------------------------------------------
    secu_code            String  否      证券代码      股票代码，如 600570 ，不入参默认全部，并按代码正序
    standard             String  否      行业划分标准  行业划分标准：22-证监会行业；24-申万行业。入参默认 22，证监会金融业。
    first_industry_code  String  否      一级行业代码  一级行业代码：J-证监会金融业（对应standard=22）；480000-申万银行业，490000-申万非银金融业（对应standard=24）。入参默认J
    fields               String  否      字段集合
    <返回结果>
    参数名                类型      长度  说明          备注
    --------------------  ------  ------  ------------  --------------------------
    secu_market           String      20  证券市场      股票市场：83-上海；90-深圳
    secu_code             String      20  证券代码      股票代码
    secu_abbr             String      20  证券简称      股票简称
    first_industry_code   String      20  一级行业代码  证监会一级
    first_industry_name   String      20  一级行业名称  一级行业名称
    second_industry_code  String      20  二级行业代码  二级行业代码
    second_industry_name  String      20  二级行业名称  二级行业名称
    third_industry_code   String      20  三级行业代码  三级行业代码
    third_industry_name   String      20  三级行业名称  三级行业名称
    fourth_industry_code  String      20  四级行业代码  四级行业代码
    furth_industry_name   String      20  四级行业名称  四级行业名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'first_industry_code': 'str', 'first_industry_name': 'str', 'second_industry_code': 'str', 'second_industry_name': 'str', 'third_industry_code': 'str', 'third_industry_name': 'str', 'fourth_industry_code': 'str', 'furth_industry_name': 'str'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'first_industry_code': '一级行业代码', 'first_industry_name': '一级行业名称', 'second_industry_code': '二级行业代码', 'second_industry_name': '二级行业名称', 'third_industry_code': '三级行业代码', 'third_industry_name': '三级行业名称', 'fourth_industry_code': '四级行业代码', 'furth_industry_name': '四级行业名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_financial_industry_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_industry_compare(secu_code: str = None, end_date: str = None, sort_field: str = None, sort_type: str = None, second_industry_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取申万行业对比信息，包含股票和行业每股收益情况。
    https://udata.hs.net/datas/653/
    <参数>
    名称                  类型    必填    说明      备注
    --------------------  ------  ------  --------  --------------------------------------------------------------------------------------------------------------------------
    secu_code             String  否      证券代码  股票代码，如 600570 。只能输入单代码，与报告期不得同时为NULL；默认查询全部股票，按股票代码排序。
    end_date              String  否      报告期    格式 2019-03-31、2019-06-30、2019-09-30、2019-12-31。不入参默认全部日期，与股票代码不得同时为空。
    sort_field            String  否      排序字段  按入参排序，默认入参 1。排序字段：1-end_date,2-operating_revenue,3-net_profit,4-profit_ps,5-net_asset_ps,6-net_profit_rate
    sort_type             String  否      排序方式  只能入参1-DESC降序 或 2-ASC升序，默认入参1。
    second_industry_code  String  否      行业代码  不入参默认全部 。行业代码从 接口financial_industry_list_v，入参standard＝24，出参second_industry_code 取得。
    fields                String  否      字段集合
    <返回结果>
    参数名                类型      长度  说明                    备注
    --------------------  ------  ------  ----------------------  ---------------------------------------
    secu_market           String    20    证券市场                股票市场：83-上交所、90-深交所
    secu_code             String    20    证券代码                股票代码
    secu_abbr             String    20    证券简称                股票简称
    end_date              String    20    报告期                  报告期
    second_industry_code  String    20    行业代码                行业代码
    second_industry_name  String    20    行业名称                行业名称
    operating_revenue     Float     20    营业收入                营业收入(元，保留2位小数)
    net_profit            Float     20    归属母公司股东的净利润  归属母公司股东的净利润(元，保留2位小数)
    profit_ps             Float     16.4  每股收益                每股收益(元，保留2位小数)
    net_asset_ps          Float     16.4  每股净资产              每股净资产(元，保留2位小数)
    net_profit_rate       Float     16.4  净利润增长率            净利润增长率(%，保留2位小数)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'second_industry_code': 'str', 'second_industry_name': 'str', 'operating_revenue': 'float', 'net_profit': 'float', 'profit_ps': 'float', 'net_asset_ps': 'float', 'net_profit_rate': 'float'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'end_date': '报告期', 'second_industry_code': '行业代码', 'second_industry_name': '行业名称', 'operating_revenue': '营业收入', 'net_profit': '归属母公司股东的净利润', 'profit_ps': '每股收益', 'net_asset_ps': '每股净资产', 'net_profit_rate': '净利润增长率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_industry_compare", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_industry_avg(secu_code: str = None, second_industry_code: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取申万行业平均信息，行业平均营业收入、平均每股情况以及净利润增长率（行业平均）。
    https://udata.hs.net/datas/654/
    <参数>
    名称                  类型    必填    说明      备注
    --------------------  ------  ------  --------  -----------------------------------------------------------------------------------------------------------------------------
    secu_code             String  否      证券代码  股票代码，如 600570 。只能输入单代码，不可与行业代码同时为空。
    second_industry_code  String  否      行业代码  行业代码，不可与股票代码同时为空。行业代码从 接口financial_industry_list_v，入参standard＝24，出参second_industry_code 取得。
    end_date              String  否      报告期    格式 2019-03-31、2019-06-30、2019-09-30、2019-12-31，不入默认全部。
    fields                String  否      字段集合
    <返回结果>
    参数名                         类型      长度  说明                            备注
    -----------------------------  ------  ------  ------------------------------  -----------------------------------------------
    end_date                       String    20    报告期                          报告期
    second_industry_code           String    20    行业代码                        行业代码
    second_industry_name           String    20    行业名称                        行业名称
    industry_operating_reenue_avg  Float     16.4  行业平均营业收入                行业平均营业收入(元，保留2位小数)
    industry_net_profit_avg        Float     16.4  行业平均归属母公司股东的净利润  行业平均归属母公司股东的净利润(元，保留2位小数)
    industry_profit_ps_avg         Float     16.4  行业平均每股收益                行业平均每股收益(元，保留2位小数)
    industry_netasset_ps_avg       Float     16.4  行业平均每股净资产              行业平均每股净资产(元，保留2位小数)
    industry_net_profit_rate_avg   Float     16.4  净利润增长率（行业平均）        行业平均净利润增长率(%，保留2位小数)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'end_date': 'str', 'second_industry_code': 'str', 'second_industry_name': 'str', 'industry_operating_reenue_avg': 'float', 'industry_net_profit_avg': 'float', 'industry_profit_ps_avg': 'float', 'industry_netasset_ps_avg': 'float', 'industry_net_profit_rate_avg': 'float'}
    column_name_dict = {'end_date': '报告期', 'second_industry_code': '行业代码', 'second_industry_name': '行业名称', 'industry_operating_reenue_avg': '行业平均营业收入', 'industry_net_profit_avg': '行业平均归属母公司股东的净利润', 'industry_profit_ps_avg': '行业平均每股收益', 'industry_netasset_ps_avg': '行业平均每股净资产', 'industry_net_profit_rate_avg': '净利润增长率（行业平均）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_industry_avg", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_industry_region_list(type: str = None, fields: str = None, **kwargs)->Query:
    """
    获取行业与地域列表。
    https://udata.hs.net/datas/655/
    <参数>
    名称    类型    必填    说明        备注
    ------  ------  ------  ----------  -------------------------------------------------------------------------------------------------------------------
    type    String  否      类型        "周期类型：0-证监会行业；1-地域，若不送则默认为‘’0”
    fields  String  否      输出字段集  支持多参数，各个参数之间以逗号相隔,如有重复，重复参数将被去除 说明：该输入字段可以指定输出字段 不送默认输出全部字段
    <返回结果>
    参数名            类型      长度  说明            备注
    ----------------  ------  ------  --------------  --------------------------------
    type              String      20  类型            类型，如果未取到默认值为"--"
    first_level_name  String      20  一级名称        一级名称，如果未取到默认值为"--"
    first_level_code  String      20  一级代码        一级代码，如果未取到默认值为"--"
    level2_obj_list   对象        20  二级名称和代码  二级名称和代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'type': 'str', 'first_level_name': 'str', 'first_level_code': 'str', 'level2_obj_list': 'str'}
    column_name_dict = {'type': '类型', 'first_level_name': '一级名称', 'first_level_code': '一级代码', 'level2_obj_list': '二级名称和代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="market_data", method="stock_industry_region_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def schedule_disclosure(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司定期报告的预计披露日期与实际披露日期，支持同时输入多个股票代码或报告期
    https://udata.hs.net/datas/379/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名       类型      长度  说明                  备注
    -----------  ------  ------  --------------------  ------
    prod_code    String      20  证劵代码
    report_date  String      20  申报日期
    actual_date  String      20  定期报告实际披露日期
    plan_date    String      20  计划执行日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'actual_date': 'str', 'plan_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'actual_date': '定期报告实际披露日期', 'plan_date': '计划执行日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="schedule_disclosure", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_key_indicator(secu_code: str = None, start_date: str = None, end_date: str = None, report_types: str = None, fields: str = None, **kwargs)->Query:
    """
    获取财务数据的关键指标信息，营业收入，市盈率、市净率、总资产等。（无数值科目不出参）包括科创板
    https://udata.hs.net/datas/380/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------
    secu_code     String  否      证券代码  默认参数为：600570.SH
    start_date    String  否      开始日期  默认参数为：系统日期-2年
    end_date      String  否      截止日期  默认参数为：系统日期
    report_types  String  否      财报类型  默认取全部，1-一季度财报，2-中报， 3-三季度财报，4-年报
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                       类型      长度  说明                                备注
    ---------------------------  ------  ------  ----------------------------------  --------------------
    secu_market                  String    20    证券市场                            83-上交所；90-深交所
    secu_code                    String    20    证券代码
    secu_abbr                    String    20    证券简称
    end_date                     String    20    报告期
    operating_revenue            Float     16.4  营业收入(元)
    total_asset                  Float     16.4  总资产(元)
    total_shareholder_equity     Float     16.4  股东权益(元)
    se_without_mi                Float     16.4  归属母公司股东权益(元)
    net_profit                   Float     16.4  净利润(元)
    np_parent_company_owners     Float     16.4  归属母公司股东的净利润(元)
    net_profit_cut               Float     16.4  扣除非经常性损益后的净利润
    basic_eps                    Float     16.4  每股收益(元)
    roe_weighted                 Float     16.4  净资产收益率_加权(%)                单位%
    roe                          Float     16.4  净资产收益率_摊薄(%)                单位%
    net_asset_ps                 Float     16.4  每股净资产(元)
    basic_eps_cut                Float     16.4  扣非每股收益(元)
    undivided_profit             Float     16.4  每股未分配利润(元)
    pb_ttm                       Float     16.4  市净率                              单位%
    capital_surplus_fund_ps      Float     16.4  每股资本公积金(元)
    accumulation_fund_ps         Float     16.4  每股公积金
    cash_flow_ps                 Float     16.4  每股现金流净额(元)
    net_oper_cash_flowps         Float     16.4  每股经营活动产生的现金流量净额(元)
    gross_income_ratio           Float     16.4  销售毛利率(%)                       单位%
    inventory_trate              Float     16.4  存货周转率(次)
    net_profit_yoy               Float     16.4  净利润同比增长率(%)                 单位%
    operating_revenue_grow_rate  Float     16.4  营业收入同比增长率(%)               单位%
    debt_assets_ratio            Float     16.4  资产负债率(%)                       单位%
    pe_ttm                       Float     16.4  市盈率(%)                           单位%
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'operating_revenue': 'float', 'total_asset': 'float', 'total_shareholder_equity': 'float', 'se_without_mi': 'float', 'net_profit': 'float', 'np_parent_company_owners': 'float', 'net_profit_cut': 'float', 'basic_eps': 'float', 'roe_weighted': 'float', 'roe': 'float', 'net_asset_ps': 'float', 'basic_eps_cut': 'float', 'undivided_profit': 'float', 'pb_ttm': 'float', 'capital_surplus_fund_ps': 'float', 'accumulation_fund_ps': 'float', 'cash_flow_ps': 'float', 'net_oper_cash_flowps': 'float', 'gross_income_ratio': 'float', 'inventory_trate': 'float', 'net_profit_yoy': 'float', 'operating_revenue_grow_rate': 'float', 'debt_assets_ratio': 'float', 'pe_ttm': 'float'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'end_date': '报告期', 'operating_revenue': '营业收入(元)', 'total_asset': '总资产(元)', 'total_shareholder_equity': '股东权益(元)', 'se_without_mi': '归属母公司股东权益(元)', 'net_profit': '净利润(元)', 'np_parent_company_owners': '归属母公司股东的净利润(元)', 'net_profit_cut': '扣除非经常性损益后的净利润', 'basic_eps': '每股收益(元)', 'roe_weighted': '净资产收益率_加权(%)', 'roe': '净资产收益率_摊薄(%)', 'net_asset_ps': '每股净资产(元)', 'basic_eps_cut': '扣非每股收益(元)', 'undivided_profit': '每股未分配利润(元)', 'pb_ttm': '市净率', 'capital_surplus_fund_ps': '每股资本公积金(元)', 'accumulation_fund_ps': '每股公积金', 'cash_flow_ps': '每股现金流净额(元)', 'net_oper_cash_flowps': '每股经营活动产生的现金流量净额(元)', 'gross_income_ratio': '销售毛利率(%)', 'inventory_trate': '存货周转率(次)', 'net_profit_yoy': '净利润同比增长率(%)', 'operating_revenue_grow_rate': '营业收入同比增长率(%)', 'debt_assets_ratio': '资产负债率(%)', 'pe_ttm': '市盈率(%)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="stock_key_indicator", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def accounting_data(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    反映上市公司的主要指标，收录同一公司在报告期末的四种财务报告，即未调整的合并报表、未调整的母公司报表
    https://udata.hs.net/datas/382/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    report_date   String  否      申报日期  默认参数为：2020-12-31
    report_type   String  否      财报类型  默认参数为0，0-合并未调整，1-合并调整，2-母公司未调整，3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                             类型      长度  说明                                备注
    ---------------------------------  ------  ------  ----------------------------------  ------
    prod_code                          String    20    证劵代码
    report_date                        String    20    申报日期
    basic_eps                          Float     16.4  每股收益EPS-基本
    diluted_eps                        Float     16.4  每股收益EPS-稀释
    basic_eps_cut                      Float     16.4  每股收益EPS-扣除／基本
    diluted_eps_cut                    Float     16.4  每股收益EPS-扣除／稀释
    np_parent_company_owners_t         Float     16.4  每股收益EPS-期末股本摊薄
    new_np_parent_company_owners_t     Float     16.4  每股收益EPS-最新股本摊薄
    net_profit_cut_t                   Float     16.4  每股收益EPS-扣除/期末股本摊薄
    new_net_profit_cut_t               Float     16.4  每股收益EPS-扣除/最新股本摊薄
    eps_ttm                            Float     16.4  每股收益EPS（TTM）
    roe                                Float     16.4  净资产收益率ROE-摊薄（公布值）
    roe_weighted                       Float     16.4  净资产收益率ROE-加权（公布值）
    roe_avg                            Float     16.4  净资产收益率-平均
    roe_cut                            Float     16.4  净资产收益率_扣除,摊薄
    roe_cut_weighted                   Float     16.4  净资产收益率（扣除-加权）
    roe_cut_avg                        Float     16.4  净资产收益率ROE（扣除-平均）
    roe_avg_year                       Float     16.4  净资产收益率-年化
    net_profit_cut_sewi                Float     16.4  净资产收益率ROE-增发条件
    total_operating_revenue            Float     16.4  营业总收入
    invest_income                      Float     16.4  投资收益
    financial_expense                  Float     16.4  财务费用
    fair_value_change_income           Float     16.4  公允价值变动净收益
    operating_profit                   Float     16.4  营业利润
    non_operating_income               Float     16.4  营业外收入
    non_operating_expense              Float     16.4  营业外支出
    total_profit                       Float     16.4  利润总额
    income_tax_cost                    Float     16.4  所得税费用
    uncertained_investment_losses      Float     16.4  未确认的投资损失
    net_profit                         Float     16.4  净利润
    np_parent_company_owners           Float     16.4  归属于母公司所有者的净利润
    minority_profit                    Float     16.4  少数股东损益
    net_operate_cash_flow              Float     16.4  经营活动产生的现金流量净额
    net_operate_cash_flow_ps           Float     16.4  每股经营活动产生的现金流量净额
    net_operate_cash_flow_ps_ttm       Float     16.4  每股经营活动产生的现金流量净额_TTM
    net_invest_cash_flow               Float     16.4  投资活动产生的现金流量净额
    net_finance_cash_flow              Float     16.4  筹资活动产生的现金流量净额
    cash_equivalent_increase           Float     16.4  现金及现金等价物净增加额
    exchan_rate_change_effect          Float     16.4  汇率变动对现金及现金等价物的影响
    end_period_cash_equivalent         Float     16.4  期末现金及现金等价物余额
    cash_equivalents                   Float     16.4  货币资金
    trading_assets                     Float     16.4  交易性金融资产
    interest_receivable                Float     16.4  应收利息
    dividend_receivable                Float     16.4  应收股利
    account_receivable                 Float     16.4  应收账款
    other_receivable                   Float     16.4  其他应收款
    inventories                        Float     16.4  存货
    total_current_assets               Float     16.4  流动资产合计
    hold_for_sale_assets               Float     16.4  可供出售金融资产
    hold_to_maturity_investments       Float     16.4  持有至到期投资
    investment_property                Float     16.4  投资性房地产
    longterm_equity_invest             Float     16.4  长期股权投资
    intangible_assets                  Float     16.4  无形资产
    total_non_current_assets           Float     16.4  非流动资产合计
    total_assets                       Float     16.4  资产总计
    shortterm_loan                     Float     16.4  短期借款
    trading_liability                  Float     16.4  交易性金融负债
    salaries_payable                   Float     16.4  应付职工薪酬
    dividend_payable                   Float     16.4  应付股利
    taxs_payable                       Float     16.4  应交税费
    other_payable                      Float     16.4  其他应付款
    non_current_liability_in_one_year  Float     16.4  一年内到期的非流动负债
    total_current_liability            Float     16.4  流动负债合计
    total_non_current_liability        Float     16.4  非流动负债合计
    total_liability                    Float     16.4  负债合计
    paidin_capital                     Float     16.4  实收资本（或股本）
    capital_reserve_fund               Float     16.4  资本公积
    surplus_reserve_fund               Float     16.4  盈余公积
    retained_profit                    Float     16.4  未分配利润
    se_without_mi                      Float     16.4  归属母公司股东权益合计
    minority_interests                 Float     16.4  少数股东权益
    total_shareholder_equity           Float     16.4  所有者权益合计
    total_liability_and_equity         Float     16.4  负债和所有者权益（或股东权益）总计
    naps                               Float     16.4  每股净资产BPS
    se_without_mi_t                    Float     16.4  每股净资产BPS（最新股本摊薄）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'basic_eps': 'float', 'diluted_eps': 'float', 'basic_eps_cut': 'float', 'diluted_eps_cut': 'float', 'np_parent_company_owners_t': 'float', 'new_np_parent_company_owners_t': 'float', 'net_profit_cut_t': 'float', 'new_net_profit_cut_t': 'float', 'eps_ttm': 'float', 'roe': 'float', 'roe_weighted': 'float', 'roe_avg': 'float', 'roe_cut': 'float', 'roe_cut_weighted': 'float', 'roe_cut_avg': 'float', 'roe_avg_year': 'float', 'net_profit_cut_sewi': 'float', 'total_operating_revenue': 'float', 'invest_income': 'float', 'financial_expense': 'float', 'fair_value_change_income': 'float', 'operating_profit': 'float', 'non_operating_income': 'float', 'non_operating_expense': 'float', 'total_profit': 'float', 'income_tax_cost': 'float', 'uncertained_investment_losses': 'float', 'net_profit': 'float', 'np_parent_company_owners': 'float', 'minority_profit': 'float', 'net_operate_cash_flow': 'float', 'net_operate_cash_flow_ps': 'float', 'net_operate_cash_flow_ps_ttm': 'float', 'net_invest_cash_flow': 'float', 'net_finance_cash_flow': 'float', 'cash_equivalent_increase': 'float', 'exchan_rate_change_effect': 'float', 'end_period_cash_equivalent': 'float', 'cash_equivalents': 'float', 'trading_assets': 'float', 'interest_receivable': 'float', 'dividend_receivable': 'float', 'account_receivable': 'float', 'other_receivable': 'float', 'inventories': 'float', 'total_current_assets': 'float', 'hold_for_sale_assets': 'float', 'hold_to_maturity_investments': 'float', 'investment_property': 'float', 'longterm_equity_invest': 'float', 'intangible_assets': 'float', 'total_non_current_assets': 'float', 'total_assets': 'float', 'shortterm_loan': 'float', 'trading_liability': 'float', 'salaries_payable': 'float', 'dividend_payable': 'float', 'taxs_payable': 'float', 'other_payable': 'float', 'non_current_liability_in_one_year': 'float', 'total_current_liability': 'float', 'total_non_current_liability': 'float', 'total_liability': 'float', 'paidin_capital': 'float', 'capital_reserve_fund': 'float', 'surplus_reserve_fund': 'float', 'retained_profit': 'float', 'se_without_mi': 'float', 'minority_interests': 'float', 'total_shareholder_equity': 'float', 'total_liability_and_equity': 'float', 'naps': 'float', 'se_without_mi_t': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'basic_eps': '每股收益EPS-基本', 'diluted_eps': '每股收益EPS-稀释', 'basic_eps_cut': '每股收益EPS-扣除／基本', 'diluted_eps_cut': '每股收益EPS-扣除／稀释', 'np_parent_company_owners_t': '每股收益EPS-期末股本摊薄', 'new_np_parent_company_owners_t': '每股收益EPS-最新股本摊薄', 'net_profit_cut_t': '每股收益EPS-扣除/期末股本摊薄', 'new_net_profit_cut_t': '每股收益EPS-扣除/最新股本摊薄', 'eps_ttm': '每股收益EPS（TTM）', 'roe': '净资产收益率ROE-摊薄（公布值）', 'roe_weighted': '净资产收益率ROE-加权（公布值）', 'roe_avg': '净资产收益率-平均', 'roe_cut': '净资产收益率_扣除,摊薄', 'roe_cut_weighted': '净资产收益率（扣除-加权）', 'roe_cut_avg': '净资产收益率ROE（扣除-平均）', 'roe_avg_year': '净资产收益率-年化', 'net_profit_cut_sewi': '净资产收益率ROE-增发条件', 'total_operating_revenue': '营业总收入', 'invest_income': '投资收益', 'financial_expense': '财务费用', 'fair_value_change_income': '公允价值变动净收益', 'operating_profit': '营业利润', 'non_operating_income': '营业外收入', 'non_operating_expense': '营业外支出', 'total_profit': '利润总额', 'income_tax_cost': '所得税费用', 'uncertained_investment_losses': '未确认的投资损失', 'net_profit': '净利润', 'np_parent_company_owners': '归属于母公司所有者的净利润', 'minority_profit': '少数股东损益', 'net_operate_cash_flow': '经营活动产生的现金流量净额', 'net_operate_cash_flow_ps': '每股经营活动产生的现金流量净额', 'net_operate_cash_flow_ps_ttm': '每股经营活动产生的现金流量净额_TTM', 'net_invest_cash_flow': '投资活动产生的现金流量净额', 'net_finance_cash_flow': '筹资活动产生的现金流量净额', 'cash_equivalent_increase': '现金及现金等价物净增加额', 'exchan_rate_change_effect': '汇率变动对现金及现金等价物的影响', 'end_period_cash_equivalent': '期末现金及现金等价物余额', 'cash_equivalents': '货币资金', 'trading_assets': '交易性金融资产', 'interest_receivable': '应收利息', 'dividend_receivable': '应收股利', 'account_receivable': '应收账款', 'other_receivable': '其他应收款', 'inventories': '存货', 'total_current_assets': '流动资产合计', 'hold_for_sale_assets': '可供出售金融资产', 'hold_to_maturity_investments': '持有至到期投资', 'investment_property': '投资性房地产', 'longterm_equity_invest': '长期股权投资', 'intangible_assets': '无形资产', 'total_non_current_assets': '非流动资产合计', 'total_assets': '资产总计', 'shortterm_loan': '短期借款', 'trading_liability': '交易性金融负债', 'salaries_payable': '应付职工薪酬', 'dividend_payable': '应付股利', 'taxs_payable': '应交税费', 'other_payable': '其他应付款', 'non_current_liability_in_one_year': '一年内到期的非流动负债', 'total_current_liability': '流动负债合计', 'total_non_current_liability': '非流动负债合计', 'total_liability': '负债合计', 'paidin_capital': '实收资本（或股本）', 'capital_reserve_fund': '资本公积', 'surplus_reserve_fund': '盈余公积', 'retained_profit': '未分配利润', 'se_without_mi': '归属母公司股东权益合计', 'minority_interests': '少数股东权益', 'total_shareholder_equity': '所有者权益合计', 'total_liability_and_equity': '负债和所有者权益（或股东权益）总计', 'naps': '每股净资产BPS', 'se_without_mi_t': '每股净资产BPS（最新股本摊薄）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="accounting_data", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_cashflow(secu_code: str = None, start_date: str = None, end_date: str = None, merge_type: str = None, fields: str = None, **kwargs)->Query:
    """
    现金流量表主要是反映出资产负债表中各个项目对现金流量的影响，可用于分析一家机构在短期内有没有足够现金
    https://udata.hs.net/datas/383/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    secu_code   String  否      证券代码  默认参数为：600570
    start_date  String  否      开始日期  默认参数为：系统日期-2年
    end_date    String  否      截止日期  默认参数为：系统日期
    merge_type  String  否      合并类型  默认参数为1，1-合并调整最新，2-未调整
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                            类型      长度  说明                                                  备注
    --------------------------------  ------  ------  ----------------------------------------------------  -----------------------------------------------------------------------------------
    secu_market                       String    20    证券市场                                              股票市场：83-上海；90-深圳
    secu_code                         String    20    证券代码                                              股票代码
    secu_abbr                         String    20    证券简称                                              股票简称
    company_type                      String    20    公司类型                                              取值范围： 1、一般企业&信托公司 2、证券公司 3、保险公司 4、商业银行
    end_date                          String    20    截止日期                                              company_type=1,2,3,4时有值
    report_type                       String    20    报告类型                                              报告类型：1-一季度；2-中报；3-三季度；4-年报
    publ_date                         String    20    公告日期                                              company_type=1,2,3,4时有值
    net_deposit_in_cb_and_ib          Float     16.4  存放中央银行和同业款项净增加额                        1.1存放中央银行和同业款项净增加额。company_type=4时有值
    other_operate_cash_paid           Float     16.4  支付的其他与经营活动有关的现金                        1.2支付的其他与经营活动有关的现金。company_type=1,2,3,4时有值
    original_compensation_paid        Float     16.4  支付原保险合同赔付款项的现金                          1.3支付原保险合同赔付款项的现金。company_type=3时有值
    net_loan_and_advance_increase     Float     16.4  客户贷款及垫款净增加额                                1.4客户贷款及垫款净增加额。company_type=4时有值
    net_deal_trading_assets           Float     16.4  处置交易性金融资产净增加额                            1.5处置交易性金融资产净增加额。company_type=2时有值
    net_cash_for_reinsurance          Float     16.4  支付再保业务现金净额                                  1.6支付再保业务现金净额。company_type=3时有值
    net_operate_cash_flow             Float     16.4  经营活动产生的现金流量净额                            1.7经营活动产生的现金流量净额。company_type=1,2,3,4时有值
    policy_dividend_cash_paid         Float     16.4  支付保单红利的现金                                    1.8支付保单红利的现金。company_type=3时有值
    tax_levy_refund                   Float     16.4  收到的税费返还                                        1.9收到的税费返还。company_type=1,2,3,4时有值
    interest_and_commission_cashin    Float     16.4  收取利息、手续费及佣金的现金                          1.10收取利息、手续费及佣金的现金。company_type=2,4时有值
    all_taxes_paid                    Float     16.4  支付的各项税款                                        1.11支付的各项税款。company_type=1,2,3,4时有值
    net_insurer_deposit_investment    Float     16.4  保户储金及投资款净增加额                              1.12保户储金及投资款净增加额。company_type=3时有值
    goods_and_services_cash_paid      Float     16.4  购买商品、接受劳务支付的现金                          1.13购买商品、接受劳务支付的现金。company_type=1,2,3,4时有值
    other_cashin_related_operate      Float     16.4  收到其他与经营活动有关的现金                          1.14收到其他与经营活动有关的现金。company_type=1,2,3,4时有值
    subtotal_operate_cash_outflow     Float     16.4  经营活动现金流出小计                                  1.15经营活动现金流出小计。company_type=1,2,3,4时有值
    staff_behalf_paid                 Float     16.4  支付给职工以及为职工支付的现金                        1.16支付给职工以及为职工支付的现金。company_type=1,2,3,4时有值
    commission_cash_paid              Float     16.4  支付手续费及佣金的现金                                1.17支付手续费及佣金的现金。company_type=2,3,4时有值
    net_original_insurance_cash       Float     16.4  收到原保险合同保费取得的现金                          1.17支付手续费及佣金的现金。company_type=3时有值
    net_deposit_increase              Float     16.4  客户存款和同业存放款项净增加额                        1.19客户存款和同业存放款项净增加额。company_type=4时有值
    net_buy_back                      Float     16.4  回购业务资金净增加额                                  1.20回购业务资金净增加额。company_type=2时有值
    net_reinsurance_cash              Float     16.4  收到再保业务现金净额                                  1.21收到再保业务现金净额。company_type=3时有值
    goods_sale_service_render_cash    Float     16.4  销售商品、提供劳务收到的现金                          1.22销售商品、提供劳务收到的现金。company_type=1时有值
    net_lend_capital                  Float     16.4  拆出资金净增加额                                      1.23拆出资金净增加额。company_type=1,2,3,4时有值
    net_borrowing_from_central_bank   Float     16.4  向中央银行借款净增加额                                1.24向中央银行借款净增加额。company_type=4时有值
    net_borrowing_from_finance_co     Float     16.4  向其他金融机构拆入资金净增加额                        1.25向其他金融机构拆入资金净增加额。company_type=2,4时有值
    subtotal_operate_cash_inflow      Float     16.4  经营活动现金流入小计                                  1.26经营活动现金流入小计。company_type=1,2,3,4时有值
    invest_cash_paid                  Float     16.4  投资支付的现金                                        2.1投资支付的现金。company_type=1,2,3,4时有值
    other_cash_from_invest_act        Float     16.4  收到其他与投资活动有关的现金                          2.2收到其他与投资活动有关的现金。company_type=1,2,3,4时有值
    net_invest_cash_flow              Float     16.4  投资活动产生的现金流量净额                            2.3投资活动产生的现金流量净额。company_type=1,2,3,4时有值
    subtotal_invest_cash_inflow       Float     16.4  投资活动现金流入小计                                  2.4投资活动现金流入小计。company_type=1,2,3,4时有值
    invest_withdrawal_cash            Float     16.4  收回投资收到的现金                                    2.5收回投资收到的现金。company_type=1,2,3,4时有值
    subtotal_invest_cash_outflow      Float     16.4  投资活动现金流出小计                                  2.6投资活动现金流出小计。company_type=1,2,3,4时有值
    invest_proceeds                   Float     16.4  取得投资收益收到的现金                                2.7取得投资收益收到的现金。company_type=1,2,3,4时有值
    net_cash_from_sub_company         Float     16.4  取得子公司及其他营业单位支付的现金净额                2.8取得子公司及其他营业单位支付的现金净额。company_type=1,2,3,4时有值
    fix_intan_other_asset_dispo_cash  Float     16.4  处置固定资产、无形资产和其他长期资产而收回的现金净额  2.9处置固定资产、无形资产和其他长期资产而收回的现金净额。company_type=1,2,3,4时有值
    fix_intan_other_asset_acqui_cash  Float     16.4  购建固定资产、无形资产和其他长期资产所支付的现金      2.10购建固定资产、无形资产和其他长期资产所支付的现金。company_type=1,2,3,4时有值
    other_cash_to_invest_act          Float     16.4  支付其他与投资活动有关的现金                          2.11支付其他与投资活动有关的现金。company_type=1,2,3,4时有值
    net_cash_deal_sub_company         Float     16.4  处置子公司及其他营业单位收到的现金净额                2.12处置子公司及其他营业单位收到的现金净额。company_type=1,2,3,4时有值
    impawned_loan_net_increase        Float     16.4  质押贷款净增加额                                      2.13质押贷款净增加额。company_type=1,2,3,4时有值
    subtotal_finance_cash_outflow     Float     16.4  筹资活动现金流出小计                                  3.1筹资活动现金流出小计。company_type=1,2,3,4时有值
    other_finance_act_payment         Float     16.4  支付的其他与筹资活动有关的现金                        3.2支付的其他与筹资活动有关的现金。company_type=1,2,3,4时有值
    subtotal_finance_cash_inflow      Float     16.4  筹资活动现金流入小计                                  3.3筹资活动现金流入小计。company_type=1,2,3,4时有值
    cash_from_bonds_issue             Float     16.4  发行债券收到的现金                                    3.4发行债券收到的现金。company_type=1,2,3,4时有值
    net_finance_cash_flow             Float     16.4  筹资活动产生的现金流量净额                            3.5筹资活动产生的现金流量净额。company_type=1,2,3,4时有值
    dividend_interest_payment         Float     16.4  分配股利、利润或偿付利息支付的现金                    3.6分配股利、利润或偿付利息支付的现金。company_type=1,2,3,4时有值
    borrowing_repayment               Float     16.4  偿还债务所支付的现金                                  3.7偿还债务所支付的现金。company_type=1,2,3,4时有值
    cash_from_invest                  Float     16.4  吸收投资收到的现金                                    3.8吸收投资收到的现金。company_type=1,2,3,4时有值
    cash_from_borrowing               Float     16.4  取得借款收到的现金                                    3.9取得借款收到的现金。company_type=1,2,3,4时有值
    other_finance_act_cash            Float     16.4  收到其他与筹资活动有关的现金                          3.10收到其他与筹资活动有关的现金。company_type=1,2,3,4时有值
    exchan_rate_change_effect         Float     16.4  汇率变动对现金的影响                                  4.1汇率变动对现金的影响。company_type=1,2,3,4时有值
    end_period_cash_equivalent        Float     16.4  现金等价物的期末余额                                  5.1现金等价物的期末余额。company_type=1,2,3,4时有值
    cash_equivalent_increase          Float     16.4  现金及现金等价物净增加额                              5.2现金及现金等价物净增加额。company_type=1,2,3,4时有值
    begin_period_cash                 Float     16.4  减：货币资金的期初余额                                5.3减：货币资金的期初余额。company_type=1,2,3,4时有值
    operate_payable_increase          Float     16.4  经营性应付项目的增加                                  6.1经营性应付项目的增加。company_type=1,2,3,4时有值
    fixed_asset_depreciation          Float     16.4  固定资产折旧                                          6.1经营性应付项目的增加。company_type=1,2,3,4时有值
    net_profit                        Float     16.4  净利润                                                6.3净利润。company_type=1,2,3,4时有值
    assets_depreciation_reserves      Float     16.4  加:资产减值准备                                       6.4加:资产减值准备。company_type=1,2,3,4时有值
    accrued_expense_added             Float     16.4  预提费用的增加（减：减少）                            6.5预提费用的增加（减：减少）。company_type=1,2,3,4时有值
    minority_profit                   Float     16.4  少数股东损益                                          6.6少数股东损益。company_type=1,2,3,4时有值
    fix_intanther_asset_dispo_loss    Float     16.4  处置固定资产、无形资产和其他长期资产的损失            6.7处置固定资产、无形资产和其他长期资产的损失。company_type=1,2,3,4时有值
    invest_loss                       Float     16.4  投资损失(减：收益)                                    6.8投资损失(减：收益)。company_type=1,2,3,4时有值
    others                            Float     16.4  其他                                                  6.9其他。company_type=1,2,3,4时有值
    financial_expense                 Float     16.4  财务费用                                              6.10财务费用。company_type=1,2,3,4时有值
    operate_receivable_decrease       Float     16.4  经营性应收项目的减少（减：增加）                      6.11经营性应收项目的减少（减：增加）。company_type=1,2,3,4时有值
    deferred_expense_decreased        Float     16.4  待摊费用的减少（减：增加）                            6.12待摊费用的减少（减：增加）。company_type=1,2,3,4时有值
    defered_tax_asset_decrease        Float     16.4  递延所得税资产减少                                    6.13递延所得税资产减少。company_type=1,2,3,4时有值
    deferred_expense_amort            Float     16.4  长期待摊费用的摊销                                    6.14长期待摊费用的摊销。company_type=1,2,3,4时有值
    defered_tax_liability_increase    Float     16.4  递延所得税负债增加                                    6.15递延所得税负债增加。company_type=1,2,3,4时有值
    net_operate_cash_flow_notes       Float     16.4  (附注)经营活动产生的现金流量净额                      6.16(附注)经营活动产生的现金流量净额。company_type=1,2,3,4时有值
    intangible_asset_amortization     Float     16.4  无形资产摊销                                          6.17无形资产摊销。company_type=1,2,3,4时有值
    inventory_decrease                Float     16.4  存货的减少(减：增加)                                  6.18存货的减少(减：增加)。company_type=1,2,3,4时有值
    fixed_asset_scrap_loss            Float     16.4  固定资产报废损失(减：收益)                            6.19固定资产报废损失(减：收益)。company_type=1,2,3,4时有值
    loss_from_fair_value_changes      Float     16.4  公允价值变动损失                                      6.20公允价值变动损失。company_type=1,2,3,4时有值
    fixed_assets_finance_leases       Float     16.4  融资租入固定资产                                      7.1融资租入固定资产。company_type=1,2,3,4时有值
    debt_to_captical                  Float     16.4  债务转为资本                                          7.2债务转为资本。company_type=1,2,3,4时有值
    cbs_expiring_within_one_year      Float     16.4  一年内到期的可转换公司债券                            7.3一年内到期的可转换公司债券。company_type=1,2,3,4时有值
    net_incr_in_cash_and_equivalents  Float     16.4  (附注)现金及现金等价物净增加额                        8.1(附注)现金及现金等价物净增加额。company_type=1,2,3,4时有值
    cash_equivalents_at_beginning     Float     16.4  减:现金等价物的期初余额                               8.3减:现金等价物的期初余额。company_type=1,2,3,4时有值
    cash_at_beginning_of_year         Float     16.4  减:现金的期初余额                                     8.2减:现金的期初余额。company_type=1,2,3,4时有值
    cash_equivalents_at_end_of_year   Float     16.4  加:现金等价物的期末余额                               8.4加:现金等价物的期末余额。company_type=1,2,3,4时有值
    cash_at_end_of_year               Float     16.4  现金的期末余额                                        8.5现金的期末余额。company_type=1,2,3,4时有值
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'company_type': 'str', 'end_date': 'str', 'report_type': 'str', 'publ_date': 'str', 'net_deposit_in_cb_and_ib': 'float', 'other_operate_cash_paid': 'float', 'original_compensation_paid': 'float', 'net_loan_and_advance_increase': 'float', 'net_deal_trading_assets': 'float', 'net_cash_for_reinsurance': 'float', 'net_operate_cash_flow': 'float', 'policy_dividend_cash_paid': 'float', 'tax_levy_refund': 'float', 'interest_and_commission_cashin': 'float', 'all_taxes_paid': 'float', 'net_insurer_deposit_investment': 'float', 'goods_and_services_cash_paid': 'float', 'other_cashin_related_operate': 'float', 'subtotal_operate_cash_outflow': 'float', 'staff_behalf_paid': 'float', 'commission_cash_paid': 'float', 'net_original_insurance_cash': 'float', 'net_deposit_increase': 'float', 'net_buy_back': 'float', 'net_reinsurance_cash': 'float', 'goods_sale_service_render_cash': 'float', 'net_lend_capital': 'float', 'net_borrowing_from_central_bank': 'float', 'net_borrowing_from_finance_co': 'float', 'subtotal_operate_cash_inflow': 'float', 'invest_cash_paid': 'float', 'other_cash_from_invest_act': 'float', 'net_invest_cash_flow': 'float', 'subtotal_invest_cash_inflow': 'float', 'invest_withdrawal_cash': 'float', 'subtotal_invest_cash_outflow': 'float', 'invest_proceeds': 'float', 'net_cash_from_sub_company': 'float', 'fix_intan_other_asset_dispo_cash': 'float', 'fix_intan_other_asset_acqui_cash': 'float', 'other_cash_to_invest_act': 'float', 'net_cash_deal_sub_company': 'float', 'impawned_loan_net_increase': 'float', 'subtotal_finance_cash_outflow': 'float', 'other_finance_act_payment': 'float', 'subtotal_finance_cash_inflow': 'float', 'cash_from_bonds_issue': 'float', 'net_finance_cash_flow': 'float', 'dividend_interest_payment': 'float', 'borrowing_repayment': 'float', 'cash_from_invest': 'float', 'cash_from_borrowing': 'float', 'other_finance_act_cash': 'float', 'exchan_rate_change_effect': 'float', 'end_period_cash_equivalent': 'float', 'cash_equivalent_increase': 'float', 'begin_period_cash': 'float', 'operate_payable_increase': 'float', 'fixed_asset_depreciation': 'float', 'net_profit': 'float', 'assets_depreciation_reserves': 'float', 'accrued_expense_added': 'float', 'minority_profit': 'float', 'fix_intanther_asset_dispo_loss': 'float', 'invest_loss': 'float', 'others': 'float', 'financial_expense': 'float', 'operate_receivable_decrease': 'float', 'deferred_expense_decreased': 'float', 'defered_tax_asset_decrease': 'float', 'deferred_expense_amort': 'float', 'defered_tax_liability_increase': 'float', 'net_operate_cash_flow_notes': 'float', 'intangible_asset_amortization': 'float', 'inventory_decrease': 'float', 'fixed_asset_scrap_loss': 'float', 'loss_from_fair_value_changes': 'float', 'fixed_assets_finance_leases': 'float', 'debt_to_captical': 'float', 'cbs_expiring_within_one_year': 'float', 'net_incr_in_cash_and_equivalents': 'float', 'cash_equivalents_at_beginning': 'float', 'cash_at_beginning_of_year': 'float', 'cash_equivalents_at_end_of_year': 'float', 'cash_at_end_of_year': 'float'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'company_type': '公司类型', 'end_date': '截止日期', 'report_type': '报告类型', 'publ_date': '公告日期', 'net_deposit_in_cb_and_ib': '存放中央银行和同业款项净增加额', 'other_operate_cash_paid': '支付的其他与经营活动有关的现金', 'original_compensation_paid': '支付原保险合同赔付款项的现金', 'net_loan_and_advance_increase': '客户贷款及垫款净增加额', 'net_deal_trading_assets': '处置交易性金融资产净增加额', 'net_cash_for_reinsurance': '支付再保业务现金净额', 'net_operate_cash_flow': '经营活动产生的现金流量净额', 'policy_dividend_cash_paid': '支付保单红利的现金', 'tax_levy_refund': '收到的税费返还', 'interest_and_commission_cashin': '收取利息、手续费及佣金的现金', 'all_taxes_paid': '支付的各项税款', 'net_insurer_deposit_investment': '保户储金及投资款净增加额', 'goods_and_services_cash_paid': '购买商品、接受劳务支付的现金', 'other_cashin_related_operate': '收到其他与经营活动有关的现金', 'subtotal_operate_cash_outflow': '经营活动现金流出小计', 'staff_behalf_paid': '支付给职工以及为职工支付的现金', 'commission_cash_paid': '支付手续费及佣金的现金', 'net_original_insurance_cash': '收到原保险合同保费取得的现金', 'net_deposit_increase': '客户存款和同业存放款项净增加额', 'net_buy_back': '回购业务资金净增加额', 'net_reinsurance_cash': '收到再保业务现金净额', 'goods_sale_service_render_cash': '销售商品、提供劳务收到的现金', 'net_lend_capital': '拆出资金净增加额', 'net_borrowing_from_central_bank': '向中央银行借款净增加额', 'net_borrowing_from_finance_co': '向其他金融机构拆入资金净增加额', 'subtotal_operate_cash_inflow': '经营活动现金流入小计', 'invest_cash_paid': '投资支付的现金', 'other_cash_from_invest_act': '收到其他与投资活动有关的现金', 'net_invest_cash_flow': '投资活动产生的现金流量净额', 'subtotal_invest_cash_inflow': '投资活动现金流入小计', 'invest_withdrawal_cash': '收回投资收到的现金', 'subtotal_invest_cash_outflow': '投资活动现金流出小计', 'invest_proceeds': '取得投资收益收到的现金', 'net_cash_from_sub_company': '取得子公司及其他营业单位支付的现金净额', 'fix_intan_other_asset_dispo_cash': '处置固定资产、无形资产和其他长期资产而收回的现金净额', 'fix_intan_other_asset_acqui_cash': '购建固定资产、无形资产和其他长期资产所支付的现金', 'other_cash_to_invest_act': '支付其他与投资活动有关的现金', 'net_cash_deal_sub_company': '处置子公司及其他营业单位收到的现金净额', 'impawned_loan_net_increase': '质押贷款净增加额', 'subtotal_finance_cash_outflow': '筹资活动现金流出小计', 'other_finance_act_payment': '支付的其他与筹资活动有关的现金', 'subtotal_finance_cash_inflow': '筹资活动现金流入小计', 'cash_from_bonds_issue': '发行债券收到的现金', 'net_finance_cash_flow': '筹资活动产生的现金流量净额', 'dividend_interest_payment': '分配股利、利润或偿付利息支付的现金', 'borrowing_repayment': '偿还债务所支付的现金', 'cash_from_invest': '吸收投资收到的现金', 'cash_from_borrowing': '取得借款收到的现金', 'other_finance_act_cash': '收到其他与筹资活动有关的现金', 'exchan_rate_change_effect': '汇率变动对现金的影响', 'end_period_cash_equivalent': '现金等价物的期末余额', 'cash_equivalent_increase': '现金及现金等价物净增加额', 'begin_period_cash': '减：货币资金的期初余额', 'operate_payable_increase': '经营性应付项目的增加', 'fixed_asset_depreciation': '固定资产折旧', 'net_profit': '净利润', 'assets_depreciation_reserves': '加:资产减值准备', 'accrued_expense_added': '预提费用的增加（减：减少）', 'minority_profit': '少数股东损益', 'fix_intanther_asset_dispo_loss': '处置固定资产、无形资产和其他长期资产的损失', 'invest_loss': '投资损失(减：收益)', 'others': '其他', 'financial_expense': '财务费用', 'operate_receivable_decrease': '经营性应收项目的减少（减：增加）', 'deferred_expense_decreased': '待摊费用的减少（减：增加）', 'defered_tax_asset_decrease': '递延所得税资产减少', 'deferred_expense_amort': '长期待摊费用的摊销', 'defered_tax_liability_increase': '递延所得税负债增加', 'net_operate_cash_flow_notes': '(附注)经营活动产生的现金流量净额', 'intangible_asset_amortization': '无形资产摊销', 'inventory_decrease': '存货的减少(减：增加)', 'fixed_asset_scrap_loss': '固定资产报废损失(减：收益)', 'loss_from_fair_value_changes': '公允价值变动损失', 'fixed_assets_finance_leases': '融资租入固定资产', 'debt_to_captical': '债务转为资本', 'cbs_expiring_within_one_year': '一年内到期的可转换公司债券', 'net_incr_in_cash_and_equivalents': '(附注)现金及现金等价物净增加额', 'cash_equivalents_at_beginning': '减:现金等价物的期初余额', 'cash_at_beginning_of_year': '减:现金的期初余额', 'cash_equivalents_at_end_of_year': '加:现金等价物的期末余额', 'cash_at_end_of_year': '现金的期末余额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_cashflow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_income(secu_code: str = None, start_date: str = None, end_date: str = None, merge_type: str = None, fields: str = None, **kwargs)->Query:
    """
    利润表是反映企业在一定会计期间经营成果的报表，包含1.X营业利润、2.X综合收益总额、3.X营业支出
    https://udata.hs.net/datas/384/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    secu_code   String  否      证券代码  默认参数为：600570
    start_date  String  否      开始日期  默认参数为：系统日期-2年
    end_date    String  否      截止日期  默认参数为：系统日期
    merge_type  String  否      合并类型  默认取1 ，1-合并调整最新，2-未调整
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                              备注
    -----------------------------  ------  ------  --------------------------------  -------------------------------------------------------------------
    secu_market                    String    20    证券市场                          股票市场：83-上海；90-深圳
    secu_code                      String    20    证券代码                          股票代码
    secu_abbr                      String    20    证券简称                          股票简称
    company_type                   String    20    公司类型                          取值范围： 1、一般企业&信托公司 2、证券公司 3、保险公司 4、商业银行
    end_date                       String    20    截止日期                          company_type=1,2,3,4时有值
    report_type                    String    20    报告类型                          报告类型：1-一季度；2-中报；3-三季度；4-年报
    publ_date                      String    20    公告日期                          company_type=1,2,3,4时有值
    operating_profit               Float     16.4  营业利润                          1.X营业利润。company_type=1,2,3,4时有值
    non_operating_income           Float     16.4  加:营业外收入                     1.2加:营业外收入。company_type=1,2,3,4时有值
    non_current_assetss_deal_loss  Float     16.4  其中：非流动资产处置净损失        1.3其中：非流动资产处置净损失。company_type=1时有值
    non_operating_expense          Float     16.4  减:营业外支出                     1.4减:营业外支出。company_type=1,2,3,4时有值
    ci_parent_company_owners       Float     16.4  归属于母公司所有者的综合收益总额  2.1归属于母公司所有者的综合收益总额。company_type=1,2,3,4时有值
    ci_minority_owners             Float     16.4  归属于少数股东的综合收益总额      2.2归属于少数股东的综合收益总额。company_type=1,2,3,4时有值
    total_composite_income         Float     16.4  综合收益总额                      2.X综合收益总额。company_type=1,2,3,4时有值
    operating_tax_surcharges       Float     16.4  营业税金及附加                    3.1营业税金及附加。company_type=1,2,3,4时有值
    operating_payout               Float     16.4  营业总支出                        3.2营业总支出。company_type=3时有值
    amortization_premium_reserve   Float     16.4  减:摊回保险责任准备金             3.3减:摊回保险责任准备金。company_type=3时有值
    financial_expense              Float     16.4  财务费用                          3.4财务费用。company_type=1,2,3,4时有值
    other_operating_cost           Float     16.4  其他业务成本                      3.5其他业务成本。company_type=1,2,3,4时有值
    operating_expense              Float     16.4  销售费用                          3.6销售费用。company_type=1,2,3,4时有值
    amortization_expense           Float     16.4  减:摊回赔付支出                   3.7减:摊回赔付支出。company_type=3时有值
    amortization_reinsurance_cost  Float     16.4  减:摊回分保费用                   3.8减:摊回分保费用。company_type=3时有值
    administration_expense         Float     16.4  管理费用                          3.9管理费用。company_type=1,2,3,4时有值
    refunded_premiums              Float     16.4  退保金                            3.10退保金。company_type=3时有值
    operating_cost                 Float     16.4  营业成本                          3.11营业成本。company_type=1,2,3,4时有值
    premium_reserve                Float     16.4  提取保险责任准备金                3.12提取保险责任准备金。company_type=3时有值
    policy_dividend_payout         Float     16.4  保单红利支出                      3.13保单红利支出。company_type=3时有值
    asset_impairment_loss          Float     16.4  资产减值损失                      3.14资产减值损失。company_type=1,2,3,4时有值
    total_operating_cost           Float     16.4  营业总成本                        3.15营业总成本。company_type=1,2,3,4时有值
    compensation_expense           Float     16.4  赔付支出                          3.16赔付支出。company_type=3时有值
    reinsurance_cost               Float     16.4  分保费用                          3.17分保费用。company_type=3时有值
    insurance_commission_expense   Float     16.4  保险手续费及佣金支出              3.18保险手续费及佣金支出。company_type=3时有值
    premiums_income                Float     16.4  保险业务收入                      4.1保险业务收入。company_type=3时有值
    unearned_premium_reserve       Float     16.4  提取未到期责任准备金              4.2提取未到期责任准备金。company_type=3时有值
    premiums_earned                Float     16.4  已赚保费                          4.3已赚保费。company_type=3时有值
    total_operating_revenue        Float     16.4  营业总收入                        4.4营业总收入。company_type=1,2,3,4时有值
    reinsurance                    Float     16.4  减：分出保费                      4.5减：分出保费。company_type=3时有值
    net_subissue_secu_income       Float     16.4  其中：证券承销业务净收入          4.6其中：证券承销业务净收入。company_type=2时有值
    other_operating_revenue        Float     16.4  其他营业收入                      4.7其他营业收入。company_type=1,2,3,4时有值
    operating_revenue              Float     16.4  营业收入                          4.8营业收入。company_type=1,2,3,4时有值
    net_proxy_secu_income          Float     16.4  其中：代理买卖证券业务净收入      4.9其中：代理买卖证券业务净收入。company_type=2时有值
    reinsurance_income             Float     16.4  其中:分保费收入                   4.10其中:分保费收入。company_type=3时有值
    net_commission_income          Float     16.4  手续费及佣金净收入                4.11手续费及佣金净收入。company_type=2,3,4时有值
    net_interest_income            Float     16.4  利息净收入                        4.12利息净收入。company_type=2,3,4时有值
    interest_income                Float     16.4  其中：利息收入                    4.13其中：利息收入。company_type=2,3,4时有值 如果没有值则用"--"表示
    commission_income              Float     16.4  其中：手续费及佣金收入            4.14其中：手续费及佣金收入。company_type=2,3,4时有值
    interest_expense               Float     16.4  其中：利息支出                    4.14其中：手续费及佣金收入。company_type=2,3,4时有值
    commission_expense             Float     16.4  其中：手续费及佣金支出            4.16其中：手续费及佣金支出。company_type=2,3,4时有值
    net_trust_income               Float     16.4  其中：受托客户资产管理业务净收入  4.17其中：受托客户资产管理业务净收入。company_type=2时有值
    diluted_eps                    Float     16.4  稀释每股收益                      稀释每股收益。company_type=1,2,3,4时有值
    basic_eps                      Float     16.4  基本每股收益                      基本每股收益。company_type=1,2,3,4时有值
    other_net_revenue              Float     16.4  非营业性收入                      6.1非营业性收入。company_type=1,2,3,4时有值
    invest_income_associates       Float     16.4  其中：对联营合营企业的投资收益    6.2其中：对联营合营企业的投资收益。company_type=1,2,3,4时有值
    invest_income                  Float     16.4  投资净收益                        6.3投资净收益。company_type=1,2,3,4时有值
    fair_value_change_income       Float     16.4  公允价值变动净收益                6.3投资净收益。company_type=1,2,3,4时有值
    exchange_income                Float     16.4  汇兑收益                          6.5汇兑收益。company_type=1,2,3,4时有值
    income_tax_cost                Float     16.4  减：所得税费用                    7.1减：所得税费用。company_type=1,2,3,4时有值
    total_profit                   Float     16.4  利润总额                          7.2利润总额。company_type=1,2,3,4时有值
    minority_profit                Float     16.4  少数股东损益                      8.1少数股东损益。company_type=1,2,3,4时有值
    net_profit                     Float     16.4  净利润                            8.2净利润。company_type=1,2,3,4时有值
    np_parent_company_owners       Float     16.4  归属于母公司所有者的净利润        8.3归属于母公司所有者的净利润。company_type=1,2,3,4时有值
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'company_type': 'str', 'end_date': 'str', 'report_type': 'str', 'publ_date': 'str', 'operating_profit': 'float', 'non_operating_income': 'float', 'non_current_assetss_deal_loss': 'float', 'non_operating_expense': 'float', 'ci_parent_company_owners': 'float', 'ci_minority_owners': 'float', 'total_composite_income': 'float', 'operating_tax_surcharges': 'float', 'operating_payout': 'float', 'amortization_premium_reserve': 'float', 'financial_expense': 'float', 'other_operating_cost': 'float', 'operating_expense': 'float', 'amortization_expense': 'float', 'amortization_reinsurance_cost': 'float', 'administration_expense': 'float', 'refunded_premiums': 'float', 'operating_cost': 'float', 'premium_reserve': 'float', 'policy_dividend_payout': 'float', 'asset_impairment_loss': 'float', 'total_operating_cost': 'float', 'compensation_expense': 'float', 'reinsurance_cost': 'float', 'insurance_commission_expense': 'float', 'premiums_income': 'float', 'unearned_premium_reserve': 'float', 'premiums_earned': 'float', 'total_operating_revenue': 'float', 'reinsurance': 'float', 'net_subissue_secu_income': 'float', 'other_operating_revenue': 'float', 'operating_revenue': 'float', 'net_proxy_secu_income': 'float', 'reinsurance_income': 'float', 'net_commission_income': 'float', 'net_interest_income': 'float', 'interest_income': 'float', 'commission_income': 'float', 'interest_expense': 'float', 'commission_expense': 'float', 'net_trust_income': 'float', 'diluted_eps': 'float', 'basic_eps': 'float', 'other_net_revenue': 'float', 'invest_income_associates': 'float', 'invest_income': 'float', 'fair_value_change_income': 'float', 'exchange_income': 'float', 'income_tax_cost': 'float', 'total_profit': 'float', 'minority_profit': 'float', 'net_profit': 'float', 'np_parent_company_owners': 'float'}
    column_name_dict = {'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'company_type': '公司类型', 'end_date': '截止日期', 'report_type': '报告类型', 'publ_date': '公告日期', 'operating_profit': '营业利润', 'non_operating_income': '加:营业外收入', 'non_current_assetss_deal_loss': '其中：非流动资产处置净损失', 'non_operating_expense': '减:营业外支出', 'ci_parent_company_owners': '归属于母公司所有者的综合收益总额', 'ci_minority_owners': '归属于少数股东的综合收益总额', 'total_composite_income': '综合收益总额', 'operating_tax_surcharges': '营业税金及附加', 'operating_payout': '营业总支出', 'amortization_premium_reserve': '减:摊回保险责任准备金', 'financial_expense': '财务费用', 'other_operating_cost': '其他业务成本', 'operating_expense': '销售费用', 'amortization_expense': '减:摊回赔付支出', 'amortization_reinsurance_cost': '减:摊回分保费用', 'administration_expense': '管理费用', 'refunded_premiums': '退保金', 'operating_cost': '营业成本', 'premium_reserve': '提取保险责任准备金', 'policy_dividend_payout': '保单红利支出', 'asset_impairment_loss': '资产减值损失', 'total_operating_cost': '营业总成本', 'compensation_expense': '赔付支出', 'reinsurance_cost': '分保费用', 'insurance_commission_expense': '保险手续费及佣金支出', 'premiums_income': '保险业务收入', 'unearned_premium_reserve': '提取未到期责任准备金', 'premiums_earned': '已赚保费', 'total_operating_revenue': '营业总收入', 'reinsurance': '减：分出保费', 'net_subissue_secu_income': '其中：证券承销业务净收入', 'other_operating_revenue': '其他营业收入', 'operating_revenue': '营业收入', 'net_proxy_secu_income': '其中：代理买卖证券业务净收入', 'reinsurance_income': '其中:分保费收入', 'net_commission_income': '手续费及佣金净收入', 'net_interest_income': '利息净收入', 'interest_income': '其中：利息收入', 'commission_income': '其中：手续费及佣金收入', 'interest_expense': '其中：利息支出', 'commission_expense': '其中：手续费及佣金支出', 'net_trust_income': '其中：受托客户资产管理业务净收入', 'diluted_eps': '稀释每股收益', 'basic_eps': '基本每股收益', 'other_net_revenue': '非营业性收入', 'invest_income_associates': '其中：对联营合营企业的投资收益', 'invest_income': '投资净收益', 'fair_value_change_income': '公允价值变动净收益', 'exchange_income': '汇兑收益', 'income_tax_cost': '减：所得税费用', 'total_profit': '利润总额', 'minority_profit': '少数股东损益', 'net_profit': '净利润', 'np_parent_company_owners': '归属于母公司所有者的净利润'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_income", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_balance(secu_code: str = None, start_date: str = None, end_date: str = None, merge_type: str = None, fields: str = None, **kwargs)->Query:
    """
    资产负债表亦称财务状况表，表示企业在一定日期的财务状况，包含1.X金融类资产、2.X金融类负债、3.
    https://udata.hs.net/datas/385/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    secu_code   String  否      证券代码  默认参数为：600570
    start_date  String  否      开始日期  默认参数为：系统日期-2年
    end_date    String  否      截止日期  默认参数为：系统日期
    merge_type  String  否      合并类型  默认取1 ，1-合并调整最新，2-未调整
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                             类型      长度  说明                          备注
    ---------------------------------  ------  ------  ----------------------------  ------------------------------------------------------------------
    secu_code                          String    20    证券代码                      股票代码
    secu_abbr                          String    20    证券简称                      股票简称
    secu_market                        String    20    证券市场                      股票市场
    company_type                       String    20    公司类型                      取值范围： 1-一般企业&信托公司；2-证券公司；3-保险公司；4-商业银行
    end_date                           String    20    截止日期                      company_type=1,2,3,4时有值
    report_type                        String    20    报告类型                      报告类型：1-一季度；2-中报；3-三季度；4-年报
    publ_date                          String    20    公告日期                      company_type=1,2,3,4时有值
    total_assets                       Float     16.4  资产总计                      company_type=1,2,3,4时有值
    total_liability                    Float     16.4  负债合计                      company_type=1,2,3,4时有值
    total_liability_and_equity         Float     16.4  负债和股东权益总计            company_type=1,2,3,4时有值
    settlement_provi                   Float     16.4  结算备付金                    1.1结算备付金。company_type=2时有值
    client_provi                       Float     16.4  客户备付金                    1.2客户备付金。company_type=2时有值
    deposit_in_interbank               Float     16.4  存放同业款项                  1.3存放同业款项。company_type=4时有值
    r_metal                            Float     16.4  贵金属                        1.4贵金属。company_type=4时有值
    lend_capital                       Float     16.4  拆出资金                      1.5拆出资金。company_type=2,3,4时有值
    derivative_assets                  Float     16.4  衍生金融资产                  1.6衍生金融资产。company_type=2,3,4时有值
    bought_sellback_assets             Float     16.4  买入返售金融资产              1.7买入返售金融资产。company_type=2,3,4时有值
    loan_and_advance                   Float     16.4  发放贷款和垫款                1.8发放贷款和垫款。company_type=4时有值
    insurance_receivables              Float     16.4  应收保费                      1.9应收保费。company_type=3时有值
    receivable_subrogation_fee         Float     16.4  应收代位追偿款                1.10应收代位追偿款。company_type=3时有值
    reinsurance_receivables            Float     16.4  应收分保账款                  1.11应收分保账款。company_type=3时有值
    receivable_unearned_r              Float     16.4  应收分保未到期责任准备金      1.12应收分保未到期责任准备金。company_type=3时有值
    receivable_claims_r                Float     16.4  应收分保未决赔款准备金        1.13应收分保未决赔款准备金。company_type=3时有值
    receivable_life_r                  Float     16.4  应收分保寿险责任准备金        1.14应收分保寿险责任准备金。company_type=3时有值
    receivable_lt_health_r             Float     16.4  应收分保长期健康险责任准备金  1.15应收分保长期健康险责任准备金。company_type=3时有值
    insurer_impawn_loan                Float     16.4  保户质押贷款                  1.16保户质押贷款。company_type=3时有值
    fixed_deposit                      Float     16.4  定期存款                      1.17定期存款。company_type=3时有值
    refundable_capital_deposit         Float     16.4  存出资本保证金                1.18存出资本保证金。company_type=2,3时有值
    refundable_deposit                 Float     16.4  存出保证金                    1.19存出保证金。company_type=3时有值
    independence_account_assets        Float     16.4  独立账户资产                  1.20独立账户资产。company_type=3时有值
    other_assets                       Float     16.4  其他资产                      1.21其他资产。company_type=2,3,4时有值
    borrowing_from_centralbank         Float     16.4  向中央银行借款                2.1向中央银行借款。company_type=4时有值
    deposit_of_interbank               Float     16.4  同业及其他金融机构存放款项    2.2同业及其他金融机构存放款项。company_type=4时有值
    borrowing_capital                  Float     16.4  拆入资金                      2.3拆入资金。company_type=2,3,4时有值
    derivative_liability               Float     16.4  衍生金融负债                  2.4衍生金融负债。company_type=2,3,4时有值
    sold_buyback_secu_proceeds         Float     16.4  卖出回购金融资产款            2.5卖出回购金融资产款。company_type=2,3,4时有值
    deposit                            Float     16.4  吸收存款                      2.6吸收存款。company_type=4时有值
    proxy_secu_proceeds                Float     16.4  代理买卖证券款                2.7代理买卖证券款。company_type=2时有值
    sub_issue_secu_proceeds            Float     16.4  代理承销证券款                2.8代理承销证券款。company_type=2时有值
    deposits_received                  Float     16.4  存入保证金                    2.9存入保证金。company_type=3时有值
    advance_insurance                  Float     16.4  预收保费                      2.10预收保费。company_type=3时有值
    commission_payable                 Float     16.4  应付手续费及佣金              2.11应付手续费及佣金。company_type=3时有值
    reinsurance_payables               Float     16.4  应付分保账款                  2.12应付分保账款。company_type=3时有值
    compensation_payable               Float     16.4  应付赔付款                    2.13应付赔付款。company_type=3时有值
    policy_dividend_payable            Float     16.4  应付保单红利                  2.14应付保单红利。company_type=3时有值
    insurer_deposit_investment         Float     16.4  保户储金及投资款              2.15保户储金及投资款。company_type=3时有值
    unearned_premium_reserve           Float     16.4  未到期责任准备金              2.16未到期责任准备金。company_type=3时有值
    outstanding_claim_reserve          Float     16.4  未决赔款准备金                2.17未决赔款准备金。company_type=3时有值
    life_insurance_reserve             Float     16.4  寿险责任准备金                2.18寿险责任准备金。company_type=3时有值
    lt_health_insurance_lr             Float     16.4  长期健康险责任准备金          2.19长期健康险责任准备金。company_type=3时有值
    independence_liability             Float     16.4  独立账户负债                  2.20独立账户负债。company_type=3时有值
    other_liability                    Float     16.4  其他负债                      2.21其他负债。company_type=2,3,4时有值
    cash_equivalents                   Float     16.4  货币资金                      3.1货币资金。company_type=1,2,3时有值
    client_deposit                     Float     16.4  客户资金存款                  3.2客户资金存款。company_type=2时有值
    trading_assets                     Float     16.4  交易性金融资产                3.3交易性金融资产。company_type=1,2,3,4时有值
    bill_receivable                    Float     16.4  应收票据                      3.4应收票据。company_type=1时有值
    dividend_receivable                Float     16.4  应收股利                      3.5应收股利。company_type=1时有值
    interest_receivable                Float     16.4  应收利息                      3.6应收利息。company_type=1,2,3,4时有值
    account_receivable                 Float     16.4  应收账款                      3.7应收账款。company_type=1,2,3时有值
    other_receivable                   Float     16.4  其他应收款                    3.8其他应收款。company_type=1时有值
    advance_payment                    Float     16.4  预付帐款                      3.9预付帐款。company_type=1时有值
    inventories                        Float     16.4  存货                          3.10存货。company_type=1时有值
    non_current_asset_in_one_year      Float     16.4  一年内到期的非流动资产        3.11一年内到期的非流动资产。company_type=1时有值
    other_current_assets               Float     16.4  其他流动资产                  3.12其他流动资产。company_type=1时有值
    total_current_assets               Float     16.4  流动资产合计                  3.X流动资产合计。company_type=1时有值
    shortterm_loan                     Float     16.4  短期借款                      4.1短期借款。company_type=1,2,3时有值
    impawned_loan                      Float     16.4  质押借款                      4.2质押借款。company_type=2时有值
    trading_liability                  Float     16.4  交易性金融负债                4.3交易性金融负债。company_type=1,2,3,4时有值
    notes_payable                      Float     16.4  应付票据                      4.4应付票据。company_type=1时有值
    accounts_payable                   Float     16.4  应付账款                      4.4应付票据。company_type=1时有值
    advance_peceipts                   Float     16.4  预收款项                      4.6预收款项。company_type=1时有值
    salaries_payable                   Float     16.4  应付职工薪酬                  4.7应付职工薪酬。company_type=1,2,3,4时有值
    dividend_payable                   Float     16.4  应付股利                      4.8应付股利。company_type=1时有值
    taxs_payable                       Float     16.4  应交税费                      4.9应交税费。company_type=1,2,3,4时有值
    interest_payable                   Float     16.4  应付利息                      4.10应付利息。company_type=1,2,3,4时有值
    other_payable                      Float     16.4  其他应付款                    4.11其他应付款。company_type=1时有值
    non_current_liability_in_one_year  Float     16.4  一年内到期的非流动负债        4.12一年内到期的非流动负债。company_type=1时有值
    other_current_liability            Float     16.4  其他流动负债                  4.13其他流动负债。company_type=1时有值
    total_current_liability            Float     16.4  流动负债合计                  4.X流动负债合计。company_type=1时有值
    hold_for_sale_assets               Float     16.4  可供出售金融资产              5.1可供出售金融资产。company_type=1,2,3,4时有值
    hold_to_maturity_investments       Float     16.4  持有至到期投资                5.2持有至到期投资。company_type=1,2,3,4时有值
    investment_property                Float     16.4  投资性房地产                  5.3投资性房地产。company_type=1,2,3,4时有值
    longterm_equity_invest             Float     16.4  长期股权投资                  5.4长期股权投资。company_type=1,2,3,4时有值
    longterm_receivable_account        Float     16.4  长期应收款                    5.5长期应收款。company_type=1时有值
    fixed_assets                       Float     16.4  固定资产                      5.6固定资产。company_type=1,2,3,4时有值
    construction_materials             Float     16.4  工程物资                      5.7工程物资。company_type=1时有值
    constru_in_process                 Float     16.4  在建工程                      5.8在建工程。company_type=1,2,3,4时有值
    fixed_assets_liquidation           Float     16.4  固定资产清理                  5.9固定资产清理。company_type=1时有值
    biological_assets                  Float     16.4  生产性生物资产                5.10生产性生物资产。company_type=1时有值
    oil_gas_assets                     Float     16.4  油气资产                      5.11油气资产。company_type=1时有值
    intangible_assets                  Float     16.4  无形资产                      5.12无形资产。company_type=1,2,3,4时有值
    seat_costs                         Float     16.4  交易席位费                    5.13交易席位费。company_type=2时有值
    development_expenditure            Float     16.4  开发支出                      5.14开发支出。company_type=1时有值
    good_will                          Float     16.4  商誉                          5.15商誉。company_type=1,2,3,4时有值
    long_deferred_expense              Float     16.4  长期待摊费用                  5.16长期待摊费用。company_type=1,2,3,4时有值
    deferred_tax_assets                Float     16.4  递延所得税资产                5.17递延所得税资产。company_type=1,2,3,4时有值
    other_non_current_assets           Float     16.4  其他非流动资产                5.18其他非流动资产。company_type=1时有值
    total_non_current_assets           Float     16.4  非流动资产合计                5.X其他非流动资产。company_type=1时有值
    longterm_loan                      Float     16.4  长期借款                      6.1长期借款。company_type=1,2,3时有值
    bonds_payable                      Float     16.4  应付债券                      6.2应付债券。company_type=1,2,3,4时有值
    longterm_account_payable           Float     16.4  长期应付款                    6.3长期应付款。company_type=1时有值
    long_salaries_pay                  Float     16.4  长期应付职工薪酬              6.4长期应付职工薪酬。company_type=1,2,3,4时有值
    specific_account_payable           Float     16.4  专项应付款                    6.5专项应付款。company_type=1时有值
    estimate_liability                 Float     16.4  预计负债                      6.6预计负债。company_type=1,2,3,4时有值
    deferred_tax_liability             Float     16.4  递延所得税负债                6.6预计负债。company_type=1,2,3,4时有值
    long_defer_income                  Float     16.4  长期递延收益                  6.8长期递延收益。company_type=1时有值
    other_non_current_liability        Float     16.4  其他非流动负债                6.9其他非流动负债。company_type=1时有值
    total_non_current_liability        Float     16.4  非流动负债合计                6.X非流动负债合计。company_type=1时有值
    paidin_capital                     Float     16.4  实收资本（或股本）            7.1实收资本（或股本）。company_type=1,2,3,4时有值
    other_equityinstruments            Float     16.4  其他权益工具                  7.2其他权益工具。company_type=1,2,3,4时有值
    capital_reserve_fund               Float     16.4  资本公积金                    7.3资本公积金。company_type=1,2,3,4时有值
    surplus_reserve_fund               Float     16.4  盈余公积金                    7.4盈余公积金。company_type=1,2,3,4时有值
    retained_profit                    Float     16.4  未分配利润                    7.5未分配利润。company_type=1,2,3,4时有值
    treasury_stock                     Float     16.4  减：库存股                    7.6减：库存股。company_type=1,2,3,4时有值
    other_composite_income             Float     16.4  其他综合收益                  7.6减：库存股。company_type=1,2,3,4时有值
    ordinary_risk_reserve_fund         Float     16.4  一般风险准备金                7.8一般风险准备金。company_type=1,2,3,4时有值
    foreign_currency_report_conv_diff  Float     16.4  外币报表折算差额              7.9外币报表折算差额。company_type=1,2,3,4时有值
    specific_reserves                  Float     16.4  专项储备                      7.10专项储备。company_type=1,2,3,4时有值
    se_without_mi                      Float     16.4  归属母公司股东权益合计        7.11归属母公司股东权益合计。company_type=1,2,3,4时有值
    minority_interests                 Float     16.4  少数股东权益                  7.12少数股东权益。company_type=1,2,3,4时有值
    total_shareholder_equity           Float     16.4  所有者权益合计                7.13所有者权益合计。company_type=1,2,3,4时有值
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'company_type': 'str', 'end_date': 'str', 'report_type': 'str', 'publ_date': 'str', 'total_assets': 'float', 'total_liability': 'float', 'total_liability_and_equity': 'float', 'settlement_provi': 'float', 'client_provi': 'float', 'deposit_in_interbank': 'float', 'r_metal': 'float', 'lend_capital': 'float', 'derivative_assets': 'float', 'bought_sellback_assets': 'float', 'loan_and_advance': 'float', 'insurance_receivables': 'float', 'receivable_subrogation_fee': 'float', 'reinsurance_receivables': 'float', 'receivable_unearned_r': 'float', 'receivable_claims_r': 'float', 'receivable_life_r': 'float', 'receivable_lt_health_r': 'float', 'insurer_impawn_loan': 'float', 'fixed_deposit': 'float', 'refundable_capital_deposit': 'float', 'refundable_deposit': 'float', 'independence_account_assets': 'float', 'other_assets': 'float', 'borrowing_from_centralbank': 'float', 'deposit_of_interbank': 'float', 'borrowing_capital': 'float', 'derivative_liability': 'float', 'sold_buyback_secu_proceeds': 'float', 'deposit': 'float', 'proxy_secu_proceeds': 'float', 'sub_issue_secu_proceeds': 'float', 'deposits_received': 'float', 'advance_insurance': 'float', 'commission_payable': 'float', 'reinsurance_payables': 'float', 'compensation_payable': 'float', 'policy_dividend_payable': 'float', 'insurer_deposit_investment': 'float', 'unearned_premium_reserve': 'float', 'outstanding_claim_reserve': 'float', 'life_insurance_reserve': 'float', 'lt_health_insurance_lr': 'float', 'independence_liability': 'float', 'other_liability': 'float', 'cash_equivalents': 'float', 'client_deposit': 'float', 'trading_assets': 'float', 'bill_receivable': 'float', 'dividend_receivable': 'float', 'interest_receivable': 'float', 'account_receivable': 'float', 'other_receivable': 'float', 'advance_payment': 'float', 'inventories': 'float', 'non_current_asset_in_one_year': 'float', 'other_current_assets': 'float', 'total_current_assets': 'float', 'shortterm_loan': 'float', 'impawned_loan': 'float', 'trading_liability': 'float', 'notes_payable': 'float', 'accounts_payable': 'float', 'advance_peceipts': 'float', 'salaries_payable': 'float', 'dividend_payable': 'float', 'taxs_payable': 'float', 'interest_payable': 'float', 'other_payable': 'float', 'non_current_liability_in_one_year': 'float', 'other_current_liability': 'float', 'total_current_liability': 'float', 'hold_for_sale_assets': 'float', 'hold_to_maturity_investments': 'float', 'investment_property': 'float', 'longterm_equity_invest': 'float', 'longterm_receivable_account': 'float', 'fixed_assets': 'float', 'construction_materials': 'float', 'constru_in_process': 'float', 'fixed_assets_liquidation': 'float', 'biological_assets': 'float', 'oil_gas_assets': 'float', 'intangible_assets': 'float', 'seat_costs': 'float', 'development_expenditure': 'float', 'good_will': 'float', 'long_deferred_expense': 'float', 'deferred_tax_assets': 'float', 'other_non_current_assets': 'float', 'total_non_current_assets': 'float', 'longterm_loan': 'float', 'bonds_payable': 'float', 'longterm_account_payable': 'float', 'long_salaries_pay': 'float', 'specific_account_payable': 'float', 'estimate_liability': 'float', 'deferred_tax_liability': 'float', 'long_defer_income': 'float', 'other_non_current_liability': 'float', 'total_non_current_liability': 'float', 'paidin_capital': 'float', 'other_equityinstruments': 'float', 'capital_reserve_fund': 'float', 'surplus_reserve_fund': 'float', 'retained_profit': 'float', 'treasury_stock': 'float', 'other_composite_income': 'float', 'ordinary_risk_reserve_fund': 'float', 'foreign_currency_report_conv_diff': 'float', 'specific_reserves': 'float', 'se_without_mi': 'float', 'minority_interests': 'float', 'total_shareholder_equity': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'company_type': '公司类型', 'end_date': '截止日期', 'report_type': '报告类型', 'publ_date': '公告日期', 'total_assets': '资产总计', 'total_liability': '负债合计', 'total_liability_and_equity': '负债和股东权益总计', 'settlement_provi': '结算备付金', 'client_provi': '客户备付金', 'deposit_in_interbank': '存放同业款项', 'r_metal': '贵金属', 'lend_capital': '拆出资金', 'derivative_assets': '衍生金融资产', 'bought_sellback_assets': '买入返售金融资产', 'loan_and_advance': '发放贷款和垫款', 'insurance_receivables': '应收保费', 'receivable_subrogation_fee': '应收代位追偿款', 'reinsurance_receivables': '应收分保账款', 'receivable_unearned_r': '应收分保未到期责任准备金', 'receivable_claims_r': '应收分保未决赔款准备金', 'receivable_life_r': '应收分保寿险责任准备金', 'receivable_lt_health_r': '应收分保长期健康险责任准备金', 'insurer_impawn_loan': '保户质押贷款', 'fixed_deposit': '定期存款', 'refundable_capital_deposit': '存出资本保证金', 'refundable_deposit': '存出保证金', 'independence_account_assets': '独立账户资产', 'other_assets': '其他资产', 'borrowing_from_centralbank': '向中央银行借款', 'deposit_of_interbank': '同业及其他金融机构存放款项', 'borrowing_capital': '拆入资金', 'derivative_liability': '衍生金融负债', 'sold_buyback_secu_proceeds': '卖出回购金融资产款', 'deposit': '吸收存款', 'proxy_secu_proceeds': '代理买卖证券款', 'sub_issue_secu_proceeds': '代理承销证券款', 'deposits_received': '存入保证金', 'advance_insurance': '预收保费', 'commission_payable': '应付手续费及佣金', 'reinsurance_payables': '应付分保账款', 'compensation_payable': '应付赔付款', 'policy_dividend_payable': '应付保单红利', 'insurer_deposit_investment': '保户储金及投资款', 'unearned_premium_reserve': '未到期责任准备金', 'outstanding_claim_reserve': '未决赔款准备金', 'life_insurance_reserve': '寿险责任准备金', 'lt_health_insurance_lr': '长期健康险责任准备金', 'independence_liability': '独立账户负债', 'other_liability': '其他负债', 'cash_equivalents': '货币资金', 'client_deposit': '客户资金存款', 'trading_assets': '交易性金融资产', 'bill_receivable': '应收票据', 'dividend_receivable': '应收股利', 'interest_receivable': '应收利息', 'account_receivable': '应收账款', 'other_receivable': '其他应收款', 'advance_payment': '预付帐款', 'inventories': '存货', 'non_current_asset_in_one_year': '一年内到期的非流动资产', 'other_current_assets': '其他流动资产', 'total_current_assets': '流动资产合计', 'shortterm_loan': '短期借款', 'impawned_loan': '质押借款', 'trading_liability': '交易性金融负债', 'notes_payable': '应付票据', 'accounts_payable': '应付账款', 'advance_peceipts': '预收款项', 'salaries_payable': '应付职工薪酬', 'dividend_payable': '应付股利', 'taxs_payable': '应交税费', 'interest_payable': '应付利息', 'other_payable': '其他应付款', 'non_current_liability_in_one_year': '一年内到期的非流动负债', 'other_current_liability': '其他流动负债', 'total_current_liability': '流动负债合计', 'hold_for_sale_assets': '可供出售金融资产', 'hold_to_maturity_investments': '持有至到期投资', 'investment_property': '投资性房地产', 'longterm_equity_invest': '长期股权投资', 'longterm_receivable_account': '长期应收款', 'fixed_assets': '固定资产', 'construction_materials': '工程物资', 'constru_in_process': '在建工程', 'fixed_assets_liquidation': '固定资产清理', 'biological_assets': '生产性生物资产', 'oil_gas_assets': '油气资产', 'intangible_assets': '无形资产', 'seat_costs': '交易席位费', 'development_expenditure': '开发支出', 'good_will': '商誉', 'long_deferred_expense': '长期待摊费用', 'deferred_tax_assets': '递延所得税资产', 'other_non_current_assets': '其他非流动资产', 'total_non_current_assets': '非流动资产合计', 'longterm_loan': '长期借款', 'bonds_payable': '应付债券', 'longterm_account_payable': '长期应付款', 'long_salaries_pay': '长期应付职工薪酬', 'specific_account_payable': '专项应付款', 'estimate_liability': '预计负债', 'deferred_tax_liability': '递延所得税负债', 'long_defer_income': '长期递延收益', 'other_non_current_liability': '其他非流动负债', 'total_non_current_liability': '非流动负债合计', 'paidin_capital': '实收资本（或股本）', 'other_equityinstruments': '其他权益工具', 'capital_reserve_fund': '资本公积金', 'surplus_reserve_fund': '盈余公积金', 'retained_profit': '未分配利润', 'treasury_stock': '减：库存股', 'other_composite_income': '其他综合收益', 'ordinary_risk_reserve_fund': '一般风险准备金', 'foreign_currency_report_conv_diff': '外币报表折算差额', 'specific_reserves': '专项储备', 'se_without_mi': '归属母公司股东权益合计', 'minority_interests': '少数股东权益', 'total_shareholder_equity': '所有者权益合计'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_balance", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_gene_qincome(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的一般企业利润表（单季度）模板，收录自公布季报以来公司的单季利润表情
    https://udata.hs.net/datas/386/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  --------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31
    report_type   String  否      财报类型  默认参数为：0 ，0-合并未调整,1-合并调整,2-母公司未调整，3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                               备注
    -----------------------------  ------  ------  ---------------------------------  ------
    prod_code                      String    20    证劵代码
    report_date                    String    20    申报日期
    total_operating_revenue        Float     16.4  单季度.营业总收入
    operating_revenue              Float     16.4  单季度.营业收入
    interest_income                Float     16.4  单季度.利息收入
    commission_income              Float     16.4  单季度.手续费及佣金收入
    premiums_earned                Float     16.4  单季度.已赚保费
    other_operating_revenue        Float     16.4  单季度.其他营业收入
    total_operating_cost           Float     16.4  单季度.营业总成本
    operating_cost                 Float     16.4  单季度.营业成本
    interest_expense               Float     16.4  单季度.利息支出
    commission_expense             Float     16.4  单季度.手续费及佣金支出
    operating_expense              Float     16.4  单季度.销售费用
    administration_expense         Float     16.4  单季度. 管理费用
    financial_expense              Float     16.4  单季度.财务费用
    operating_tax_and_surcharges   Float     16.4  单季度.营业税金及附加
    asset_impairment_loss          Float     16.4  单季度.资产减值损失
    other_operating_cost           Float     16.4  单季度.其他营业成本
    invest_income                  Float     16.4  单季度.投资收益
    invest_income_from_associates  Float     16.4  单季度.对联营合营企业的投资收益
    fair_value_change_income       Float     16.4  单季度.公允价值变动净收益
    operating_profit               Float     16.4  单季度.营业利润
    non_operating_income           Float     16.4  单季度.营业外收入
    non_operating_expense          Float     16.4  单季度.营业外支出
    non_current_assetss_deal_loss  Float     16.4  单季度. 非流动资产处置净损失
    total_profit                   Float     16.4  单季度.利润总额
    income_tax_cost                Float     16.4  单季度.所得税费用
    uncertained_investment_loss    Float     16.4  单季度.未确认的投资损失
    net_profit                     Float     16.4  单季度.净利润
    np_from_parent_company_owners  Float     16.4  单季度.归属于母公司所有者的净利润
    minority_profit                Float     16.4  单季度.少数股东损益
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'total_operating_revenue': 'float', 'operating_revenue': 'float', 'interest_income': 'float', 'commission_income': 'float', 'premiums_earned': 'float', 'other_operating_revenue': 'float', 'total_operating_cost': 'float', 'operating_cost': 'float', 'interest_expense': 'float', 'commission_expense': 'float', 'operating_expense': 'float', 'administration_expense': 'float', 'financial_expense': 'float', 'operating_tax_and_surcharges': 'float', 'asset_impairment_loss': 'float', 'other_operating_cost': 'float', 'invest_income': 'float', 'invest_income_from_associates': 'float', 'fair_value_change_income': 'float', 'operating_profit': 'float', 'non_operating_income': 'float', 'non_operating_expense': 'float', 'non_current_assetss_deal_loss': 'float', 'total_profit': 'float', 'income_tax_cost': 'float', 'uncertained_investment_loss': 'float', 'net_profit': 'float', 'np_from_parent_company_owners': 'float', 'minority_profit': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'total_operating_revenue': '单季度.营业总收入', 'operating_revenue': '单季度.营业收入', 'interest_income': '单季度.利息收入', 'commission_income': '单季度.手续费及佣金收入', 'premiums_earned': '单季度.已赚保费', 'other_operating_revenue': '单季度.其他营业收入', 'total_operating_cost': '单季度.营业总成本', 'operating_cost': '单季度.营业成本', 'interest_expense': '单季度.利息支出', 'commission_expense': '单季度.手续费及佣金支出', 'operating_expense': '单季度.销售费用', 'administration_expense': '单季度. 管理费用', 'financial_expense': '单季度.财务费用', 'operating_tax_and_surcharges': '单季度.营业税金及附加', 'asset_impairment_loss': '单季度.资产减值损失', 'other_operating_cost': '单季度.其他营业成本', 'invest_income': '单季度.投资收益', 'invest_income_from_associates': '单季度.对联营合营企业的投资收益', 'fair_value_change_income': '单季度.公允价值变动净收益', 'operating_profit': '单季度.营业利润', 'non_operating_income': '单季度.营业外收入', 'non_operating_expense': '单季度.营业外支出', 'non_current_assetss_deal_loss': '单季度. 非流动资产处置净损失', 'total_profit': '单季度.利润总额', 'income_tax_cost': '单季度.所得税费用', 'uncertained_investment_loss': '单季度.未确认的投资损失', 'net_profit': '单季度.净利润', 'np_from_parent_company_owners': '单季度.归属于母公司所有者的净利润', 'minority_profit': '单季度.少数股东损益'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_gene_qincome", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_bank_qincome(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的商业银行利润表（单季度）模板，收录自公布季报以来公司的单季利润表情
    https://udata.hs.net/datas/387/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  --------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ，0-合并未调整,1-合并调整,2-母公司未调整，3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                               备注
    -----------------------------  ------  ------  ---------------------------------  ------
    prod_code                      String    20    证劵代码
    report_date                    String    20    申报日期
    operating_revenue              Float     16.4  单季度.营业收入
    net_interest_income            Float     16.4  单季度.利息净收入
    interest_income                Float     16.4  单季度.利息收入
    interest_expense               Float     16.4  单季度.利息支出
    net_commission_income          Float     16.4  单季度.手续费及佣金净收入
    commission_income              Float     16.4  单季度.手续费及佣金收入
    commission_expense             Float     16.4  单季度.手续费及佣金支出
    invest_income                  Float     16.4  单季度.投资收益
    invest_income_from_associates  Float     16.4  单季度.对联营合营企业的投资收益
    fair_value_change_income       Float     16.4  单季度.公允价值变动净收益
    exchange_income                Float     16.4  单季度.汇兑收益
    other_operating_income         Float     16.4  单季度.其他业务收入
    operating_payout               Float     16.4  单季度.营业支出
    operating_tax_and_surcharges   Float     16.4  单季度.营业税金及附加
    operating_and_admin_expense    Float     16.4  单季度.业务及管理费
    asset_impairment_loss          Float     16.4  单季度.资产减值损失
    other_operating_cost           Float     16.4  单季度.其他营业成本
    operating_profit               Float     16.4  单季度.营业利润
    non_operating_income           Float     16.4  单季度.营业外收入
    non_operating_expense          Float     16.4  单季度.营业外支出
    total_profit                   Float     16.4  单季度.利润总额
    income_tax_cost                Float     16.4  单季度.所得税费用
    uncertained_investment_loss    Float     16.4  单季度.未确认的投资损失
    net_profit                     Float     16.4  单季度.净利润
    np_from_parent_company_owners  Float     16.4  单季度.归属于母公司所有者的净利润
    minority_profit                Float     16.4  单季度.少数股东损益
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'operating_revenue': 'float', 'net_interest_income': 'float', 'interest_income': 'float', 'interest_expense': 'float', 'net_commission_income': 'float', 'commission_income': 'float', 'commission_expense': 'float', 'invest_income': 'float', 'invest_income_from_associates': 'float', 'fair_value_change_income': 'float', 'exchange_income': 'float', 'other_operating_income': 'float', 'operating_payout': 'float', 'operating_tax_and_surcharges': 'float', 'operating_and_admin_expense': 'float', 'asset_impairment_loss': 'float', 'other_operating_cost': 'float', 'operating_profit': 'float', 'non_operating_income': 'float', 'non_operating_expense': 'float', 'total_profit': 'float', 'income_tax_cost': 'float', 'uncertained_investment_loss': 'float', 'net_profit': 'float', 'np_from_parent_company_owners': 'float', 'minority_profit': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'operating_revenue': '单季度.营业收入', 'net_interest_income': '单季度.利息净收入', 'interest_income': '单季度.利息收入', 'interest_expense': '单季度.利息支出', 'net_commission_income': '单季度.手续费及佣金净收入', 'commission_income': '单季度.手续费及佣金收入', 'commission_expense': '单季度.手续费及佣金支出', 'invest_income': '单季度.投资收益', 'invest_income_from_associates': '单季度.对联营合营企业的投资收益', 'fair_value_change_income': '单季度.公允价值变动净收益', 'exchange_income': '单季度.汇兑收益', 'other_operating_income': '单季度.其他业务收入', 'operating_payout': '单季度.营业支出', 'operating_tax_and_surcharges': '单季度.营业税金及附加', 'operating_and_admin_expense': '单季度.业务及管理费', 'asset_impairment_loss': '单季度.资产减值损失', 'other_operating_cost': '单季度.其他营业成本', 'operating_profit': '单季度.营业利润', 'non_operating_income': '单季度.营业外收入', 'non_operating_expense': '单季度.营业外支出', 'total_profit': '单季度.利润总额', 'income_tax_cost': '单季度.所得税费用', 'uncertained_investment_loss': '单季度.未确认的投资损失', 'net_profit': '单季度.净利润', 'np_from_parent_company_owners': '单季度.归属于母公司所有者的净利润', 'minority_profit': '单季度.少数股东损益'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_bank_qincome", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_secu_qincome(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的证券公司利润表（单季度）模板，收录自公布季报以来公司的单季利润表情
    https://udata.hs.net/datas/388/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为0 ，0-合并未调整，1-合并调整，2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                               备注
    -----------------------------  ------  ------  ---------------------------------  ------
    prod_code                      String    20    证劵代码
    report_date                    String    20    申报日期
    operating_revenue              Float     16.4  单季度.营业收入
    net_commission_income          Float     16.4  单季度.手续费及佣金净收入
    net_proxy_secu_income          Float     16.4  单季度.代理买卖证券业务净收入
    net_sub_issue_secu_income      Float     16.4  单季度.证券承销业务净收入
    net_trust_income               Float     16.4  单季度.受托客户资产管理业务净收入
    net_interest_income            Float     16.4  单季度.利息净收入
    invest_income                  Float     16.4  单季度.投资收益
    invest_income_from_associates  Float     16.4  单季度.对联营合营企业的投资收益
    fair_value_change_income       Float     16.4  单季度.公允价值变动净收益
    exchange_income                Float     16.4  单季度.汇兑收益
    other_operating_income         Float     16.4  单季度.其他业务收入
    operating_payout               Float     16.4  单季度.营业支出
    operating_tax_and_surcharges   Float     16.4  单季度.营业税金及附加
    operating_and_admin_expense    Float     16.4  单季度.业务及管理费
    asset_impairment_loss          Float     16.4  单季度.资产减值损失
    other_operating_cost           Float     16.4  单季度.其他营业成本
    operating_profit               Float     16.4  单季度.营业利润
    non_operating_income           Float     16.4  单季度.营业外收入
    non_operating_expense          Float     16.4  单季度.营业外支出
    total_profit                   Float     16.4  单季度.利润总额
    income_tax_cost                Float     16.4  单季度.所得税费用
    net_profit                     Float     16.4  单季度.净利润
    np_from_parent_company_owners  Float     16.4  单季度.归属于母公司所有者的净利润
    minority_profit                Float     16.4  单季度.少数股东损益
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'operating_revenue': 'float', 'net_commission_income': 'float', 'net_proxy_secu_income': 'float', 'net_sub_issue_secu_income': 'float', 'net_trust_income': 'float', 'net_interest_income': 'float', 'invest_income': 'float', 'invest_income_from_associates': 'float', 'fair_value_change_income': 'float', 'exchange_income': 'float', 'other_operating_income': 'float', 'operating_payout': 'float', 'operating_tax_and_surcharges': 'float', 'operating_and_admin_expense': 'float', 'asset_impairment_loss': 'float', 'other_operating_cost': 'float', 'operating_profit': 'float', 'non_operating_income': 'float', 'non_operating_expense': 'float', 'total_profit': 'float', 'income_tax_cost': 'float', 'net_profit': 'float', 'np_from_parent_company_owners': 'float', 'minority_profit': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'operating_revenue': '单季度.营业收入', 'net_commission_income': '单季度.手续费及佣金净收入', 'net_proxy_secu_income': '单季度.代理买卖证券业务净收入', 'net_sub_issue_secu_income': '单季度.证券承销业务净收入', 'net_trust_income': '单季度.受托客户资产管理业务净收入', 'net_interest_income': '单季度.利息净收入', 'invest_income': '单季度.投资收益', 'invest_income_from_associates': '单季度.对联营合营企业的投资收益', 'fair_value_change_income': '单季度.公允价值变动净收益', 'exchange_income': '单季度.汇兑收益', 'other_operating_income': '单季度.其他业务收入', 'operating_payout': '单季度.营业支出', 'operating_tax_and_surcharges': '单季度.营业税金及附加', 'operating_and_admin_expense': '单季度.业务及管理费', 'asset_impairment_loss': '单季度.资产减值损失', 'other_operating_cost': '单季度.其他营业成本', 'operating_profit': '单季度.营业利润', 'non_operating_income': '单季度.营业外收入', 'non_operating_expense': '单季度.营业外支出', 'total_profit': '单季度.利润总额', 'income_tax_cost': '单季度.所得税费用', 'net_profit': '单季度.净利润', 'np_from_parent_company_owners': '单季度.归属于母公司所有者的净利润', 'minority_profit': '单季度.少数股东损益'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_secu_qincome", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_insu_qincome(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的保险公司利润表（单季度）模板，收录自公布季报以来公司的单季利润表情
    https://udata.hs.net/datas/389/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为0 ，0-合并未调整，1-合并调整，2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                               备注
    -----------------------------  ------  ------  ---------------------------------  ------
    prod_code                      String    20    证劵代码
    operating_revenue              Float     16.4  单季度.营业收入
    premiums_earned                Float     16.4  单季度.已赚保费
    premiums_income                Float     16.4  单季度.保险业务收入
    reinsurance_income             Float     16.4  单季度.分保费收入
    reinsurance                    Float     16.4  单季度.分出保费
    unearned_premium_reserve       Float     16.4  单季度.提取未到期责任准备金
    invest_income                  Float     16.4  单季度.投资收益
    invest_income_from_associates  Float     16.4  单季度.对联营合营企业的投资收益
    fair_value_change_income       Float     16.4  单季度.公允价值变动净收益
    exchange_income                Float     16.4  单季度.汇兑收益
    other_operating_income         Float     16.4  单季度.其他业务收入
    operating_payout               Float     16.4  单季度.营业支出
    refunded_premiums              Float     16.4  单季度.退保金
    compensation_expense           Float     16.4  单季度.赔付支出
    amortization_expense           Float     16.4  单季度.摊回赔付支出
    premium_reserve                Float     16.4  单季度.提取保险责任准备金
    amortization_premium_reserve   Float     16.4  单季度.摊回保险责任准备金
    policy_dividend_payout         Float     16.4  单季度.保单红利支出
    reinsurance_cost               Float     16.4  单季度.分保费用
    insurance_commission_expense   Float     16.4  单季度.保险手续费及佣金支出
    operating_tax_and_surcharges   Float     16.4  单季度.营业税金及附加
    operating_and_admin_expense    Float     16.4  单季度.业务及管理费
    amortization_reinsurance_cost  Float     16.4  单季度.摊回分保费用
    asset_impairment_loss          Float     16.4  单季度.资产减值损失
    other_operating_cost           Float     16.4  单季度.其他营业成本
    operating_profit               Float     16.4  单季度.营业利润
    non_operating_income           Float     16.4  单季度.营业外收入
    non_operating_expense          Float     16.4  单季度.营业外支出
    total_profit                   Float     16.4  单季度.利润总额
    net_profit                     Float     16.4  单季度.净利润
    np_from_parent_company_owners  Float     16.4  单季度.归属于母公司所有者的净利润
    minority_profit                Float     16.4  单季度.少数股东损益
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'operating_revenue': 'float', 'premiums_earned': 'float', 'premiums_income': 'float', 'reinsurance_income': 'float', 'reinsurance': 'float', 'unearned_premium_reserve': 'float', 'invest_income': 'float', 'invest_income_from_associates': 'float', 'fair_value_change_income': 'float', 'exchange_income': 'float', 'other_operating_income': 'float', 'operating_payout': 'float', 'refunded_premiums': 'float', 'compensation_expense': 'float', 'amortization_expense': 'float', 'premium_reserve': 'float', 'amortization_premium_reserve': 'float', 'policy_dividend_payout': 'float', 'reinsurance_cost': 'float', 'insurance_commission_expense': 'float', 'operating_tax_and_surcharges': 'float', 'operating_and_admin_expense': 'float', 'amortization_reinsurance_cost': 'float', 'asset_impairment_loss': 'float', 'other_operating_cost': 'float', 'operating_profit': 'float', 'non_operating_income': 'float', 'non_operating_expense': 'float', 'total_profit': 'float', 'net_profit': 'float', 'np_from_parent_company_owners': 'float', 'minority_profit': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'operating_revenue': '单季度.营业收入', 'premiums_earned': '单季度.已赚保费', 'premiums_income': '单季度.保险业务收入', 'reinsurance_income': '单季度.分保费收入', 'reinsurance': '单季度.分出保费', 'unearned_premium_reserve': '单季度.提取未到期责任准备金', 'invest_income': '单季度.投资收益', 'invest_income_from_associates': '单季度.对联营合营企业的投资收益', 'fair_value_change_income': '单季度.公允价值变动净收益', 'exchange_income': '单季度.汇兑收益', 'other_operating_income': '单季度.其他业务收入', 'operating_payout': '单季度.营业支出', 'refunded_premiums': '单季度.退保金', 'compensation_expense': '单季度.赔付支出', 'amortization_expense': '单季度.摊回赔付支出', 'premium_reserve': '单季度.提取保险责任准备金', 'amortization_premium_reserve': '单季度.摊回保险责任准备金', 'policy_dividend_payout': '单季度.保单红利支出', 'reinsurance_cost': '单季度.分保费用', 'insurance_commission_expense': '单季度.保险手续费及佣金支出', 'operating_tax_and_surcharges': '单季度.营业税金及附加', 'operating_and_admin_expense': '单季度.业务及管理费', 'amortization_reinsurance_cost': '单季度.摊回分保费用', 'asset_impairment_loss': '单季度.资产减值损失', 'other_operating_cost': '单季度.其他营业成本', 'operating_profit': '单季度.营业利润', 'non_operating_income': '单季度.营业外收入', 'non_operating_expense': '单季度.营业外支出', 'total_profit': '单季度.利润总额', 'net_profit': '单季度.净利润', 'np_from_parent_company_owners': '单季度.归属于母公司所有者的净利润', 'minority_profit': '单季度.少数股东损益'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_insu_qincome", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_gene_qcashflow(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的一般企业现金流量表（单季度）模板，收录自公布季报以来公司的单季现金
    https://udata.hs.net/datas/390/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为0 ，0-合并未调整，1-合并调整，2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                              类型      长度  说明                                                       备注
    ----------------------------------  ------  ------  ---------------------------------------------------------  ------
    prod_code                           String    20    证劵代码
    report_date                         String    20    申报日期
    goods_sale_and_service_render_cash  Float     16.4  单季度.销售商品、提供劳务收到的现金
    tax_levy_refund                     Float     16.4  单季度.收到的税费返还
    other_cashin_related_operate        Float     16.4  单季度.收到其他与经营活动有关的现金
    subtotal_operate_cash_inflow        Float     16.4  单季度.经营活动现金流入小计
    goods_and_services_cash_paid        Float     16.4  单季度.购买商品、接受劳务支付的现金
    staff_behalf_paid                   Float     16.4  单季度.支付给职工以及为职工支付的现金
    all_taxes_paid                      Float     16.4  单季度.支付的各项税费
    other_operate_cash_paid             Float     16.4  单季度.支付其他与经营活动有关的现金
    subtotal_operate_cash_outflow       Float     16.4  单季度.经营活动现金流出小计
    net_operate_cash_flow               Float     16.4  单季度.经营活动产生的现金流量净额
    invest_withdrawal_cash              Float     16.4  单季度.收回投资收到的现金
    invest_proceeds                     Float     16.4  单季度.取得投资收益收到的现金
    fix_intan_other_asset_dispo_cash    Float     16.4  单季度.处置固定资产、无形资产和其他长期资产收回的现金净额
    net_cash_deal_subcompany            Float     16.4  单季度.处置子公司及其他营业单位收到的现金净额
    other_cash_from_invest_act          Float     16.4  单季度.收到其他与投资活动有关的现金
    subtotal_invest_cash_inflow         Float     16.4  单季度.投资活动现金流入小计
    fix_intan_other_asset_acqui_cash    Float     16.4  单季度.购建固定资产、无形资产和其他长期资产支付的现金
    invest_cash_paid                    Float     16.4  单季度.投资支付的现金
    net_cash_from_sub_company           Float     16.4  单季度.取得子公司及其他营业单位支付的现金净额
    impawned_loan_net_increase          Float     16.4  单季度.质押贷款净增加额
    other_cash_to_invest_act            Float     16.4  单季度.支付其他与投资活动有关的现金
    subtotal_invest_cash_outflow        Float     16.4  单季度.投资活动现金流出小计
    net_invest_cash_flow                Float     16.4  单季度.投资活动产生的现金流量净额
    cash_from_invest                    Float     16.4  单季度.吸收投资收到的现金
    cash_from_bonds_issue               Float     16.4  单季度.发行债券收到的现金
    cash_from_borrowing                 Float     16.4  单季度.取得借款收到的现金
    other_finance_act_cash              Float     16.4  单季度.收到其他与筹资活动有关的现金
    subtotal_finance_cash_inflow        Float     16.4  单季度.筹资活动现金流入小计
    borrowing_repayment                 Float     16.4  单季度.偿还债务支付的现金
    dividend_interest_payment           Float     16.4  单季度.分配股利、利润或偿付利息支付的现金
    other_finance_act_payment           Float     16.4  单季度.支付其他与筹资活动有关的现金
    subtotal_finance_cash_outflow       Float     16.4  单季度.筹资活动现金流出小计
    net_finance_cash_flow               Float     16.4  单季度.筹资活动产生的现金流量净额
    exchange_rate_change_effect         Float     16.4  单季度.汇率变动对现金及现金等价物的影响
    cash_equivalent_increase            Float     16.4  单季度.现金及现金等价物净增加额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'goods_sale_and_service_render_cash': 'float', 'tax_levy_refund': 'float', 'other_cashin_related_operate': 'float', 'subtotal_operate_cash_inflow': 'float', 'goods_and_services_cash_paid': 'float', 'staff_behalf_paid': 'float', 'all_taxes_paid': 'float', 'other_operate_cash_paid': 'float', 'subtotal_operate_cash_outflow': 'float', 'net_operate_cash_flow': 'float', 'invest_withdrawal_cash': 'float', 'invest_proceeds': 'float', 'fix_intan_other_asset_dispo_cash': 'float', 'net_cash_deal_subcompany': 'float', 'other_cash_from_invest_act': 'float', 'subtotal_invest_cash_inflow': 'float', 'fix_intan_other_asset_acqui_cash': 'float', 'invest_cash_paid': 'float', 'net_cash_from_sub_company': 'float', 'impawned_loan_net_increase': 'float', 'other_cash_to_invest_act': 'float', 'subtotal_invest_cash_outflow': 'float', 'net_invest_cash_flow': 'float', 'cash_from_invest': 'float', 'cash_from_bonds_issue': 'float', 'cash_from_borrowing': 'float', 'other_finance_act_cash': 'float', 'subtotal_finance_cash_inflow': 'float', 'borrowing_repayment': 'float', 'dividend_interest_payment': 'float', 'other_finance_act_payment': 'float', 'subtotal_finance_cash_outflow': 'float', 'net_finance_cash_flow': 'float', 'exchange_rate_change_effect': 'float', 'cash_equivalent_increase': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'goods_sale_and_service_render_cash': '单季度.销售商品、提供劳务收到的现金', 'tax_levy_refund': '单季度.收到的税费返还', 'other_cashin_related_operate': '单季度.收到其他与经营活动有关的现金', 'subtotal_operate_cash_inflow': '单季度.经营活动现金流入小计', 'goods_and_services_cash_paid': '单季度.购买商品、接受劳务支付的现金', 'staff_behalf_paid': '单季度.支付给职工以及为职工支付的现金', 'all_taxes_paid': '单季度.支付的各项税费', 'other_operate_cash_paid': '单季度.支付其他与经营活动有关的现金', 'subtotal_operate_cash_outflow': '单季度.经营活动现金流出小计', 'net_operate_cash_flow': '单季度.经营活动产生的现金流量净额', 'invest_withdrawal_cash': '单季度.收回投资收到的现金', 'invest_proceeds': '单季度.取得投资收益收到的现金', 'fix_intan_other_asset_dispo_cash': '单季度.处置固定资产、无形资产和其他长期资产收回的现金净额', 'net_cash_deal_subcompany': '单季度.处置子公司及其他营业单位收到的现金净额', 'other_cash_from_invest_act': '单季度.收到其他与投资活动有关的现金', 'subtotal_invest_cash_inflow': '单季度.投资活动现金流入小计', 'fix_intan_other_asset_acqui_cash': '单季度.购建固定资产、无形资产和其他长期资产支付的现金', 'invest_cash_paid': '单季度.投资支付的现金', 'net_cash_from_sub_company': '单季度.取得子公司及其他营业单位支付的现金净额', 'impawned_loan_net_increase': '单季度.质押贷款净增加额', 'other_cash_to_invest_act': '单季度.支付其他与投资活动有关的现金', 'subtotal_invest_cash_outflow': '单季度.投资活动现金流出小计', 'net_invest_cash_flow': '单季度.投资活动产生的现金流量净额', 'cash_from_invest': '单季度.吸收投资收到的现金', 'cash_from_bonds_issue': '单季度.发行债券收到的现金', 'cash_from_borrowing': '单季度.取得借款收到的现金', 'other_finance_act_cash': '单季度.收到其他与筹资活动有关的现金', 'subtotal_finance_cash_inflow': '单季度.筹资活动现金流入小计', 'borrowing_repayment': '单季度.偿还债务支付的现金', 'dividend_interest_payment': '单季度.分配股利、利润或偿付利息支付的现金', 'other_finance_act_payment': '单季度.支付其他与筹资活动有关的现金', 'subtotal_finance_cash_outflow': '单季度.筹资活动现金流出小计', 'net_finance_cash_flow': '单季度.筹资活动产生的现金流量净额', 'exchange_rate_change_effect': '单季度.汇率变动对现金及现金等价物的影响', 'cash_equivalent_increase': '单季度.现金及现金等价物净增加额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_gene_qcashflow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_bank_qcashflow(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的商业银行现金流量表（单季度）模板，收录自公布季报以来公司的单季现金
    https://udata.hs.net/datas/391/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为0 ，0-合并未调整，1-合并调整，2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                            类型      长度  说明                                                       备注
    --------------------------------  ------  ------  ---------------------------------------------------------  ------
    prod_code                         String    20    证劵代码
    report_date                       String    20    申报日期
    net_deposit_increase              Float     16.4  单季度.客户存款和同业存放款项净增加额
    net_borrowing_from_central_bank   Float     16.4  单季度.向中央银行借款净增加额
    net_borrowing_from_finance_co     Float     16.4  单季度.向其他金融机构拆入资金净增加额
    interest_and_commission_cashin    Float     16.4  单季度.收取利息、手续费及佣金的现金
    other_cashin_related_operate      Float     16.4  单季度.收到其他与经营活动有关的现金
    subtotal_operate_cash_inflow      Float     16.4  单季度.经营活动现金流入小计
    net_loan_and_advance_increase     Float     16.4  单季度.客户贷款及垫款净增加额
    net_deposit_in_cb_and_ib          Float     16.4  单季度.存放中央银行和同业款项净增加额
    net_lend_capital                  Float     16.4  单季度.拆出资金净增加额
    commission_cash_paid              Float     16.4  单季度.支付手续费及佣金的现金
    staff_behalf_paid                 Float     16.4  单季度.支付给职工以及为职工支付的现金
    all_taxes_paid                    Float     16.4  单季度.支付的各项税费
    other_operate_cash_paid           Float     16.4  单季度.支付其他与经营活动有关的现金
    subtotal_operate_cash_outflow     Float     16.4  单季度.经营活动现金流出小计
    net_operate_cash_flow             Float     16.4  单季度.经营活动产生的现金流量净额
    invest_withdrawal_cash            Float     16.4  单季度.收回投资收到的现金
    invest_proceeds                   Float     16.4  单季度.取得投资收益收到的现金
    fix_intan_other_asset_dispo_cash  Float     16.4  单季度.处置固定资产、无形资产和其他长期资产收回的现金净额
    net_cash_deal_subcompany          Float     16.4  单季度.处置子公司及其他营业单位收到的现金净额
    other_cash_from_invest_act        Float     16.4  单季度.收到其他与投资活动有关的现金
    subtotal_invest_cash_inflow       Float     16.4  单季度.投资活动现金流入小计
    fix_intan_other_asset_acqui_cash  Float     16.4  单季度.购建固定资产、无形资产和其他长期资产支付的现金
    invest_cash_paid                  Float     16.4  单季度.投资支付的现金
    net_cash_from_sub_company         Float     16.4  单季度.取得子公司及其他营业单位支付的现金净额
    other_cash_to_invest_act          Float     16.4  单季度.支付其他与投资活动有关的现金
    subtotal_invest_cash_outflow      Float     16.4  单季度.投资活动现金流出小计
    net_invest_cash_flow              Float     16.4  单季度.投资活动产生的现金流量净额
    cash_from_invest                  Float     16.4  单季度.吸收投资收到的现金
    cash_from_bonds_issue             Float     16.4  单季度.发行债券收到的现金
    cash_from_borrowing               Float     16.4  单季度.取得借款收到的现金
    other_finance_act_cash            Float     16.4  单季度.收到其他与筹资活动有关的现金
    subtotal_finance_cash_inflow      Float     16.4  单季度.筹资活动现金流入小计
    borrowing_repayment               Float     16.4  单季度.偿还债务支付的现金
    dividend_interest_payment         Float     16.4  单季度.分配股利、利润或偿付利息支付的现金
    other_finance_act_payment         Float     16.4  单季度.支付其他与筹资活动有关的现金
    subtotal_finance_cash_outflow     Float     16.4  单季度.筹资活动现金流出小计
    net_finance_cash_flow             Float     16.4  单季度.筹资活动产生的现金流量净额
    exchange_rate_change_effect       Float     16.4  单季度.汇率变动对现金及现金等价物的影响
    cash_equivalent_increase          Float     16.4  现金及现金等价物净增加额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'net_deposit_increase': 'float', 'net_borrowing_from_central_bank': 'float', 'net_borrowing_from_finance_co': 'float', 'interest_and_commission_cashin': 'float', 'other_cashin_related_operate': 'float', 'subtotal_operate_cash_inflow': 'float', 'net_loan_and_advance_increase': 'float', 'net_deposit_in_cb_and_ib': 'float', 'net_lend_capital': 'float', 'commission_cash_paid': 'float', 'staff_behalf_paid': 'float', 'all_taxes_paid': 'float', 'other_operate_cash_paid': 'float', 'subtotal_operate_cash_outflow': 'float', 'net_operate_cash_flow': 'float', 'invest_withdrawal_cash': 'float', 'invest_proceeds': 'float', 'fix_intan_other_asset_dispo_cash': 'float', 'net_cash_deal_subcompany': 'float', 'other_cash_from_invest_act': 'float', 'subtotal_invest_cash_inflow': 'float', 'fix_intan_other_asset_acqui_cash': 'float', 'invest_cash_paid': 'float', 'net_cash_from_sub_company': 'float', 'other_cash_to_invest_act': 'float', 'subtotal_invest_cash_outflow': 'float', 'net_invest_cash_flow': 'float', 'cash_from_invest': 'float', 'cash_from_bonds_issue': 'float', 'cash_from_borrowing': 'float', 'other_finance_act_cash': 'float', 'subtotal_finance_cash_inflow': 'float', 'borrowing_repayment': 'float', 'dividend_interest_payment': 'float', 'other_finance_act_payment': 'float', 'subtotal_finance_cash_outflow': 'float', 'net_finance_cash_flow': 'float', 'exchange_rate_change_effect': 'float', 'cash_equivalent_increase': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'net_deposit_increase': '单季度.客户存款和同业存放款项净增加额', 'net_borrowing_from_central_bank': '单季度.向中央银行借款净增加额', 'net_borrowing_from_finance_co': '单季度.向其他金融机构拆入资金净增加额', 'interest_and_commission_cashin': '单季度.收取利息、手续费及佣金的现金', 'other_cashin_related_operate': '单季度.收到其他与经营活动有关的现金', 'subtotal_operate_cash_inflow': '单季度.经营活动现金流入小计', 'net_loan_and_advance_increase': '单季度.客户贷款及垫款净增加额', 'net_deposit_in_cb_and_ib': '单季度.存放中央银行和同业款项净增加额', 'net_lend_capital': '单季度.拆出资金净增加额', 'commission_cash_paid': '单季度.支付手续费及佣金的现金', 'staff_behalf_paid': '单季度.支付给职工以及为职工支付的现金', 'all_taxes_paid': '单季度.支付的各项税费', 'other_operate_cash_paid': '单季度.支付其他与经营活动有关的现金', 'subtotal_operate_cash_outflow': '单季度.经营活动现金流出小计', 'net_operate_cash_flow': '单季度.经营活动产生的现金流量净额', 'invest_withdrawal_cash': '单季度.收回投资收到的现金', 'invest_proceeds': '单季度.取得投资收益收到的现金', 'fix_intan_other_asset_dispo_cash': '单季度.处置固定资产、无形资产和其他长期资产收回的现金净额', 'net_cash_deal_subcompany': '单季度.处置子公司及其他营业单位收到的现金净额', 'other_cash_from_invest_act': '单季度.收到其他与投资活动有关的现金', 'subtotal_invest_cash_inflow': '单季度.投资活动现金流入小计', 'fix_intan_other_asset_acqui_cash': '单季度.购建固定资产、无形资产和其他长期资产支付的现金', 'invest_cash_paid': '单季度.投资支付的现金', 'net_cash_from_sub_company': '单季度.取得子公司及其他营业单位支付的现金净额', 'other_cash_to_invest_act': '单季度.支付其他与投资活动有关的现金', 'subtotal_invest_cash_outflow': '单季度.投资活动现金流出小计', 'net_invest_cash_flow': '单季度.投资活动产生的现金流量净额', 'cash_from_invest': '单季度.吸收投资收到的现金', 'cash_from_bonds_issue': '单季度.发行债券收到的现金', 'cash_from_borrowing': '单季度.取得借款收到的现金', 'other_finance_act_cash': '单季度.收到其他与筹资活动有关的现金', 'subtotal_finance_cash_inflow': '单季度.筹资活动现金流入小计', 'borrowing_repayment': '单季度.偿还债务支付的现金', 'dividend_interest_payment': '单季度.分配股利、利润或偿付利息支付的现金', 'other_finance_act_payment': '单季度.支付其他与筹资活动有关的现金', 'subtotal_finance_cash_outflow': '单季度.筹资活动现金流出小计', 'net_finance_cash_flow': '单季度.筹资活动产生的现金流量净额', 'exchange_rate_change_effect': '单季度.汇率变动对现金及现金等价物的影响', 'cash_equivalent_increase': '现金及现金等价物净增加额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_bank_qcashflow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_secu_qcashflow(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    1.根据2007年新会计准则制定的证券公司现金流量表（单季度）模板，收录公布季报以来公司的单季现金流
    https://udata.hs.net/datas/392/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为0 ，0-合并未调整，1-合并调整，2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                            类型      长度  说明                                                       备注
    --------------------------------  ------  ------  ---------------------------------------------------------  ------
    prod_code                         String    20    证劵代码
    report_date                       String    20    申报日期
    net_deal_trading_assets           Float     16.4  单季度.处置交易性金融资产净增加额
    interest_and_commission_cashin    Float     16.4  单季度.收取利息、手续费及佣金的现金
    net_borrowing_from_finance_co     Float     16.4  单季度.拆入资金净增加额
    other_cashin_related_operate      Float     16.4  单季度.收到其他与经营活动有关的现金
    subtotal_operate_cash_inflow      Float     16.4  单季度.经营活动现金流入小计
    commission_cash_paid              Float     16.4  单季度.支付手续费及佣金的现金
    net_lend_capital                  Float     16.4  单季度.拆出资金净增加额
    staff_behalf_paid                 Float     16.4  单季度.支付给职工以及为职工支付的现金
    all_taxes_paid                    Float     16.4  单季度.支付的各项税费
    other_operate_cash_paid           Float     16.4  单季度.支付其他与经营活动有关的现金
    subtotal_operate_cash_outflow     Float     16.4  单季度.经营活动现金流出小计
    net_operate_cash_flow             Float     16.4  单季度.经营活动产生的现金流量净额
    invest_withdrawal_cash            Float     16.4  单季度.收回投资收到的现金
    invest_proceeds                   Float     16.4  单季度.取得投资收益收到的现金
    fix_intan_other_asset_dispo_cash  Float     16.4  单季度.处置固定资产、无形资产和其他长期资产收回的现金净额
    net_cash_deal_subcompany          Float     16.4  单季度.处置子公司及其他营业单位收到的现金净额
    other_cash_from_invest_act        Float     16.4  单季度.收到其他与投资活动有关的现金
    subtotal_invest_cash_inflow       Float     16.4  单季度.投资活动现金流入小计
    fix_intan_other_asset_acqui_cash  Float     16.4  单季度.购建固定资产、无形资产和其他长期资产支付的现金
    invest_cash_paid                  Float     16.4  单季度.投资支付的现金
    net_cash_from_sub_company         Float     16.4  单季度.取得子公司及其他营业单位支付的现金净额
    other_cash_to_invest_act          Float     16.4  单季度.支付其他与投资活动有关的现金
    subtotal_invest_cash_outflow      Float     16.4  单季度.投资活动现金流出小计
    net_invest_cash_flow              Float     16.4  单季度.投资活动产生的现金流量净额
    cash_from_invest                  Float     16.4  单季度.吸收投资收到的现金
    cash_from_bonds_issue             Float     16.4  单季度.发行债券收到的现金
    cash_from_borrowing               Float     16.4  单季度.取得借款收到的现金
    other_finance_act_cash            Float     16.4  单季度.收到其他与筹资活动有关的现金
    subtotal_finance_cash_inflow      Float     16.4  单季度.筹资活动现金流入小计
    borrowing_repayment               Float     16.4  单季度.偿还债务支付的现金
    dividend_interest_payment         Float     16.4  单季度.分配股利、利润或偿付利息支付的现金
    other_finance_act_payment         Float     16.4  单季度.支付其他与筹资活动有关的现金
    subtotal_finance_cash_outflow     Float     16.4  单季度.筹资活动现金流出小计
    net_finance_cash_flow             Float     16.4  单季度.筹资活动产生的现金流量净额
    exchange_rate_change_effect       Float     16.4  单季度.汇率变动对现金及现金等价物的影响
    cash_equivalent_increase          Float     16.4  单季度.现金及现金等价物净增加额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'net_deal_trading_assets': 'float', 'interest_and_commission_cashin': 'float', 'net_borrowing_from_finance_co': 'float', 'other_cashin_related_operate': 'float', 'subtotal_operate_cash_inflow': 'float', 'commission_cash_paid': 'float', 'net_lend_capital': 'float', 'staff_behalf_paid': 'float', 'all_taxes_paid': 'float', 'other_operate_cash_paid': 'float', 'subtotal_operate_cash_outflow': 'float', 'net_operate_cash_flow': 'float', 'invest_withdrawal_cash': 'float', 'invest_proceeds': 'float', 'fix_intan_other_asset_dispo_cash': 'float', 'net_cash_deal_subcompany': 'float', 'other_cash_from_invest_act': 'float', 'subtotal_invest_cash_inflow': 'float', 'fix_intan_other_asset_acqui_cash': 'float', 'invest_cash_paid': 'float', 'net_cash_from_sub_company': 'float', 'other_cash_to_invest_act': 'float', 'subtotal_invest_cash_outflow': 'float', 'net_invest_cash_flow': 'float', 'cash_from_invest': 'float', 'cash_from_bonds_issue': 'float', 'cash_from_borrowing': 'float', 'other_finance_act_cash': 'float', 'subtotal_finance_cash_inflow': 'float', 'borrowing_repayment': 'float', 'dividend_interest_payment': 'float', 'other_finance_act_payment': 'float', 'subtotal_finance_cash_outflow': 'float', 'net_finance_cash_flow': 'float', 'exchange_rate_change_effect': 'float', 'cash_equivalent_increase': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'net_deal_trading_assets': '单季度.处置交易性金融资产净增加额', 'interest_and_commission_cashin': '单季度.收取利息、手续费及佣金的现金', 'net_borrowing_from_finance_co': '单季度.拆入资金净增加额', 'other_cashin_related_operate': '单季度.收到其他与经营活动有关的现金', 'subtotal_operate_cash_inflow': '单季度.经营活动现金流入小计', 'commission_cash_paid': '单季度.支付手续费及佣金的现金', 'net_lend_capital': '单季度.拆出资金净增加额', 'staff_behalf_paid': '单季度.支付给职工以及为职工支付的现金', 'all_taxes_paid': '单季度.支付的各项税费', 'other_operate_cash_paid': '单季度.支付其他与经营活动有关的现金', 'subtotal_operate_cash_outflow': '单季度.经营活动现金流出小计', 'net_operate_cash_flow': '单季度.经营活动产生的现金流量净额', 'invest_withdrawal_cash': '单季度.收回投资收到的现金', 'invest_proceeds': '单季度.取得投资收益收到的现金', 'fix_intan_other_asset_dispo_cash': '单季度.处置固定资产、无形资产和其他长期资产收回的现金净额', 'net_cash_deal_subcompany': '单季度.处置子公司及其他营业单位收到的现金净额', 'other_cash_from_invest_act': '单季度.收到其他与投资活动有关的现金', 'subtotal_invest_cash_inflow': '单季度.投资活动现金流入小计', 'fix_intan_other_asset_acqui_cash': '单季度.购建固定资产、无形资产和其他长期资产支付的现金', 'invest_cash_paid': '单季度.投资支付的现金', 'net_cash_from_sub_company': '单季度.取得子公司及其他营业单位支付的现金净额', 'other_cash_to_invest_act': '单季度.支付其他与投资活动有关的现金', 'subtotal_invest_cash_outflow': '单季度.投资活动现金流出小计', 'net_invest_cash_flow': '单季度.投资活动产生的现金流量净额', 'cash_from_invest': '单季度.吸收投资收到的现金', 'cash_from_bonds_issue': '单季度.发行债券收到的现金', 'cash_from_borrowing': '单季度.取得借款收到的现金', 'other_finance_act_cash': '单季度.收到其他与筹资活动有关的现金', 'subtotal_finance_cash_inflow': '单季度.筹资活动现金流入小计', 'borrowing_repayment': '单季度.偿还债务支付的现金', 'dividend_interest_payment': '单季度.分配股利、利润或偿付利息支付的现金', 'other_finance_act_payment': '单季度.支付其他与筹资活动有关的现金', 'subtotal_finance_cash_outflow': '单季度.筹资活动现金流出小计', 'net_finance_cash_flow': '单季度.筹资活动产生的现金流量净额', 'exchange_rate_change_effect': '单季度.汇率变动对现金及现金等价物的影响', 'cash_equivalent_increase': '单季度.现金及现金等价物净增加额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_secu_qcashflow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def financial_insu_qcashflow(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    根据2007年新会计准则制定的保险公司现金流量表（单季度）模板，收录自公布季报以来公司的单季现金流量
    https://udata.hs.net/datas/393/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH，支持同时输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31，支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为0 ，0-合并未调整，1-合并调整，2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                            类型      长度  说明                                                       备注
    --------------------------------  ------  ------  ---------------------------------------------------------  ------
    prod_code                         String    20    证劵代码
    report_date                       String    20    申报日期
    net_original_insurance_cash       Float     16.4  单季度.收到原保险合同保费取得的现金
    net_reinsurance_cash              Float     16.4  单季度.收到再保业务现金净额
    net_insurer_deposit_investment    Float     16.4  单季度.保户储金及投资款净增加额
    tax_levy_refund                   Float     16.4  单季度.收到的税费返还
    other_cashin_related_operate      Float     16.4  单季度.收到其他与经营活动有关的现金
    subtotal_operate_cash_inflow      Float     16.4  单季度.经营活动现金流入小计
    commission_cash_paid              Float     16.4  单季度.支付手续费及佣金的现金
    original_compensation_paid        Float     16.4  单季度.支付原保险合同赔付款项的现金
    net_cash_for_reinsurance          Float     16.4  单季度.支付再保业务现金净额
    policy_dividend_cash_paid         Float     16.4  单季度.支付保单红利的现金
    staff_behalf_paid                 Float     16.4  单季度.支付给职工以及为职工支付的现金
    all_taxes_paid                    Float     16.4  单季度.支付的各项税费
    other_operate_cash_paid           Float     16.4  单季度.支付其他与经营活动有关的现金
    subtotal_operate_cash_outflow     Float     16.4  单季度.经营活动现金流出小计
    net_operate_cash_flow             Float     16.4  单季度.经营活动产生的现金流量净额
    invest_withdrawal_cash            Float     16.4  单季度.收回投资收到的现金
    invest_proceeds                   Float     16.4  单季度.取得投资收益收到的现金
    fix_intan_other_asset_dispo_cash  Float     16.4  单季度.处置固定资产、无形资产和其他长期资产收回的现金净额
    net_cash_deal_subcompany          Float     16.4  单季度.处置子公司及其他营业单位收到的现金净额
    other_cash_from_invest_act        Float     16.4  单季度.收到其他与投资活动有关的现金
    subtotal_invest_cash_inflow       Float     16.4  单季度.投资活动现金流入小计
    fix_intan_other_asset_acqui_cash  Float     16.4  单季度.购建固定资产、无形资产和其他长期资产支付的现金
    invest_cash_paid                  Float     16.4  单季度.投资支付的现金
    net_cash_from_sub_company         Float     16.4  单季度.取得子公司及其他营业单位支付的现金净额
    impawned_loan_net_increase        Float     16.4  单季度.质押贷款净增加额
    other_cash_to_invest_act          Float     16.4  单季度.支付其他与投资活动有关的现金
    subtotal_invest_cash_outflow      Float     16.4  单季度.投资活动现金流出小计
    net_invest_cash_flow              Float     16.4  单季度.投资活动产生的现金流量净额
    cash_from_invest                  Float     16.4  单季度.吸收投资收到的现金
    cash_from_bonds_issue             Float     16.4  单季度.发行债券收到的现金
    cash_from_borrowing               Float     16.4  单季度.取得借款收到的现金
    other_finance_act_cash            Float     16.4  单季度.收到其他与筹资活动有关的现金
    subtotal_finance_cash_inflow      Float     16.4  单季度.筹资活动现金流入小计
    borrowing_repayment               Float     16.4  单季度.偿还债务支付的现金
    dividend_interest_payment         Float     16.4  单季度.分配股利、利润或偿付利息支付的现金
    other_finance_act_payment         Float     16.4  单季度.支付其他与筹资活动有关的现金
    subtotal_finance_cash_outflow     Float     16.4  单季度.筹资活动现金流出小计
    net_finance_cash_flow             Float     16.4  单季度.筹资活动产生的现金流量净额
    exchange_rate_change_effect       Float     16.4  单季度.汇率变动对现金及现金等价物的影响
    cash_equivalent_increase          Float     16.4  单季度.现金及现金等价物净增加额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'net_original_insurance_cash': 'float', 'net_reinsurance_cash': 'float', 'net_insurer_deposit_investment': 'float', 'tax_levy_refund': 'float', 'other_cashin_related_operate': 'float', 'subtotal_operate_cash_inflow': 'float', 'commission_cash_paid': 'float', 'original_compensation_paid': 'float', 'net_cash_for_reinsurance': 'float', 'policy_dividend_cash_paid': 'float', 'staff_behalf_paid': 'float', 'all_taxes_paid': 'float', 'other_operate_cash_paid': 'float', 'subtotal_operate_cash_outflow': 'float', 'net_operate_cash_flow': 'float', 'invest_withdrawal_cash': 'float', 'invest_proceeds': 'float', 'fix_intan_other_asset_dispo_cash': 'float', 'net_cash_deal_subcompany': 'float', 'other_cash_from_invest_act': 'float', 'subtotal_invest_cash_inflow': 'float', 'fix_intan_other_asset_acqui_cash': 'float', 'invest_cash_paid': 'float', 'net_cash_from_sub_company': 'float', 'impawned_loan_net_increase': 'float', 'other_cash_to_invest_act': 'float', 'subtotal_invest_cash_outflow': 'float', 'net_invest_cash_flow': 'float', 'cash_from_invest': 'float', 'cash_from_bonds_issue': 'float', 'cash_from_borrowing': 'float', 'other_finance_act_cash': 'float', 'subtotal_finance_cash_inflow': 'float', 'borrowing_repayment': 'float', 'dividend_interest_payment': 'float', 'other_finance_act_payment': 'float', 'subtotal_finance_cash_outflow': 'float', 'net_finance_cash_flow': 'float', 'exchange_rate_change_effect': 'float', 'cash_equivalent_increase': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'net_original_insurance_cash': '单季度.收到原保险合同保费取得的现金', 'net_reinsurance_cash': '单季度.收到再保业务现金净额', 'net_insurer_deposit_investment': '单季度.保户储金及投资款净增加额', 'tax_levy_refund': '单季度.收到的税费返还', 'other_cashin_related_operate': '单季度.收到其他与经营活动有关的现金', 'subtotal_operate_cash_inflow': '单季度.经营活动现金流入小计', 'commission_cash_paid': '单季度.支付手续费及佣金的现金', 'original_compensation_paid': '单季度.支付原保险合同赔付款项的现金', 'net_cash_for_reinsurance': '单季度.支付再保业务现金净额', 'policy_dividend_cash_paid': '单季度.支付保单红利的现金', 'staff_behalf_paid': '单季度.支付给职工以及为职工支付的现金', 'all_taxes_paid': '单季度.支付的各项税费', 'other_operate_cash_paid': '单季度.支付其他与经营活动有关的现金', 'subtotal_operate_cash_outflow': '单季度.经营活动现金流出小计', 'net_operate_cash_flow': '单季度.经营活动产生的现金流量净额', 'invest_withdrawal_cash': '单季度.收回投资收到的现金', 'invest_proceeds': '单季度.取得投资收益收到的现金', 'fix_intan_other_asset_dispo_cash': '单季度.处置固定资产、无形资产和其他长期资产收回的现金净额', 'net_cash_deal_subcompany': '单季度.处置子公司及其他营业单位收到的现金净额', 'other_cash_from_invest_act': '单季度.收到其他与投资活动有关的现金', 'subtotal_invest_cash_inflow': '单季度.投资活动现金流入小计', 'fix_intan_other_asset_acqui_cash': '单季度.购建固定资产、无形资产和其他长期资产支付的现金', 'invest_cash_paid': '单季度.投资支付的现金', 'net_cash_from_sub_company': '单季度.取得子公司及其他营业单位支付的现金净额', 'impawned_loan_net_increase': '单季度.质押贷款净增加额', 'other_cash_to_invest_act': '单季度.支付其他与投资活动有关的现金', 'subtotal_invest_cash_outflow': '单季度.投资活动现金流出小计', 'net_invest_cash_flow': '单季度.投资活动产生的现金流量净额', 'cash_from_invest': '单季度.吸收投资收到的现金', 'cash_from_bonds_issue': '单季度.发行债券收到的现金', 'cash_from_borrowing': '单季度.取得借款收到的现金', 'other_finance_act_cash': '单季度.收到其他与筹资活动有关的现金', 'subtotal_finance_cash_inflow': '单季度.筹资活动现金流入小计', 'borrowing_repayment': '单季度.偿还债务支付的现金', 'dividend_interest_payment': '单季度.分配股利、利润或偿付利息支付的现金', 'other_finance_act_payment': '单季度.支付其他与筹资活动有关的现金', 'subtotal_finance_cash_outflow': '单季度.筹资活动现金流出小计', 'net_finance_cash_flow': '单季度.筹资活动产生的现金流量净额', 'exchange_rate_change_effect': '单季度.汇率变动对现金及现金等价物的影响', 'cash_equivalent_increase': '单季度.现金及现金等价物净增加额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="financial_insu_qcashflow", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def performance_forecast(en_prod_code: str = None, report_date: str = None, forecast_object: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司对未来报告期本公司业绩的预计情况，包括业绩预计类型、预计内容、具体预计值等，并收录了实际
    https://udata.hs.net/datas/394/
    <参数>
    名称             类型    必填    说明      备注
    ---------------  ------  ------  --------  -------------------------------------------------------------
    en_prod_code     String  否      证劵代码  默认参数为：600570.SH,支持输入多个股票代码
    report_date      String  否      申报日期  默认参数为：2020-12-31,报告期选择季报、中报、年报等定期报告期
    forecast_object  String  否      预告对象  默认参数为：0 ,0-累计利润,1-季度利润
    fields           String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                备注
    --------------------------  ------  ------  ------------------  ------
    prod_code                   String    20    证劵代码
    report_date                 String    20    申报日期
    result_statement            String    20    业绩预告摘要
    forcast_type                String    20    业绩预告类型
    publ_date                   String    20    业绩预告日期
    forcast_content             String    20    业绩预告内容
    eprofit_ceiling             Float     16.4  预计净利润上限
    eprofit_floor               Float     16.4  预计净利润下限
    egrowth_rate_ceiling        Float     16.4  变动幅度上限
    egrowth_rate_floor          Float     16.4  变动幅度下限
    eeps_ceiling                Float     16.4  预计每股收益上限
    eeps_floor                  Float     16.4  预计每股收益下限
    basic_eps                   Float     16.4  去年同期每股收益
    np_yoy_consistent_forecast  Float     16.4  一致预期净利润增幅
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'result_statement': 'str', 'forcast_type': 'str', 'publ_date': 'str', 'forcast_content': 'str', 'eprofit_ceiling': 'float', 'eprofit_floor': 'float', 'egrowth_rate_ceiling': 'float', 'egrowth_rate_floor': 'float', 'eeps_ceiling': 'float', 'eeps_floor': 'float', 'basic_eps': 'float', 'np_yoy_consistent_forecast': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'result_statement': '业绩预告摘要', 'forcast_type': '业绩预告类型', 'publ_date': '业绩预告日期', 'forcast_content': '业绩预告内容', 'eprofit_ceiling': '预计净利润上限', 'eprofit_floor': '预计净利润下限', 'egrowth_rate_ceiling': '变动幅度上限', 'egrowth_rate_floor': '变动幅度下限', 'eeps_ceiling': '预计每股收益上限', 'eeps_floor': '预计每股收益下限', 'basic_eps': '去年同期每股收益', 'np_yoy_consistent_forecast': '一致预期净利润增幅'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="performance_forecast", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def performance_letters(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    收录上市公司在业绩快报中披露的主要财务数据和指标
    https://udata.hs.net/datas/395/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,报告期选择季报、中报、年报等定期报告期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                        类型      长度  说明                          备注
    ----------------------------  ------  ------  ----------------------------  ------
    prod_code                     String    20    证劵代码
    report_date                   String    20    申报日期
    period_mark                   String    20    业绩快报类型
    publ_date                     String    20    业绩快报披露日
    operating_revenue             Float     16.4  营业收入
    operating_profit              Float     16.4  营业利润
    total_profit                  Float     16.4  利润总额
    np_parent_company_owners      Float     16.4  归属母公司股东的净利润
    net_profit_cut                Float     16.4  扣除非经常性损益后的净利润
    net_operate_cash_flow         Float     16.4  经营活动现金流量净额
    basic_eps                     Float     16.4  每股收益-基本
    roe                           Float     16.4  净资产收益率-摊薄
    roe_weighted                  Float     16.4  净资产收益率-加权
    net_asset_ps                  Float     16.4  每股净资产
    net_operate_cash_flow_ps      Float     16.4  每股经营活动现金流量净额
    total_assets                  Float     16.4  总资产
    se_without_mi                 Float     16.4  归属上市公司股东的所有者权益
    total_shares                  Float     16.4  总股本
    operating_revenue_yoy         Float     16.4  主营业务收入同比
    gross_profit_yoy              Float     16.4  主营业务利润同比
    operating_profit_yoy          Float     16.4  营业利润同比
    np_parent_company_owners_yoy  Float     16.4  归属母公司净利润同比
    net_profit_cut_yoy            Float     16.4  扣除非经常性损益后净利润同比
    basic_eps_yoy                 Float     16.4  每股收益(摊薄) 同比
    roe_weighted_yoy              Float     16.4  净资产收益率(加权) 同比
    net_asset_ps_to_opening       Float     16.4  每股净资产较期初比
    total_assets_to_opening       Float     16.4  总资产较期初比
    se_without_mi_to_opening      Float     16.4  归属母公司股东权益较期初比
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'period_mark': 'str', 'publ_date': 'str', 'operating_revenue': 'float', 'operating_profit': 'float', 'total_profit': 'float', 'np_parent_company_owners': 'float', 'net_profit_cut': 'float', 'net_operate_cash_flow': 'float', 'basic_eps': 'float', 'roe': 'float', 'roe_weighted': 'float', 'net_asset_ps': 'float', 'net_operate_cash_flow_ps': 'float', 'total_assets': 'float', 'se_without_mi': 'float', 'total_shares': 'float', 'operating_revenue_yoy': 'float', 'gross_profit_yoy': 'float', 'operating_profit_yoy': 'float', 'np_parent_company_owners_yoy': 'float', 'net_profit_cut_yoy': 'float', 'basic_eps_yoy': 'float', 'roe_weighted_yoy': 'float', 'net_asset_ps_to_opening': 'float', 'total_assets_to_opening': 'float', 'se_without_mi_to_opening': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'period_mark': '业绩快报类型', 'publ_date': '业绩快报披露日', 'operating_revenue': '营业收入', 'operating_profit': '营业利润', 'total_profit': '利润总额', 'np_parent_company_owners': '归属母公司股东的净利润', 'net_profit_cut': '扣除非经常性损益后的净利润', 'net_operate_cash_flow': '经营活动现金流量净额', 'basic_eps': '每股收益-基本', 'roe': '净资产收益率-摊薄', 'roe_weighted': '净资产收益率-加权', 'net_asset_ps': '每股净资产', 'net_operate_cash_flow_ps': '每股经营活动现金流量净额', 'total_assets': '总资产', 'se_without_mi': '归属上市公司股东的所有者权益', 'total_shares': '总股本', 'operating_revenue_yoy': '主营业务收入同比', 'gross_profit_yoy': '主营业务利润同比', 'operating_profit_yoy': '营业利润同比', 'np_parent_company_owners_yoy': '归属母公司净利润同比', 'net_profit_cut_yoy': '扣除非经常性损益后净利润同比', 'basic_eps_yoy': '每股收益(摊薄) 同比', 'roe_weighted_yoy': '净资产收益率(加权) 同比', 'net_asset_ps_to_opening': '每股净资产较期初比', 'total_assets_to_opening': '总资产较期初比', 'se_without_mi_to_opening': '归属母公司股东权益较期初比'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="performance_letters", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def performance_letters_q(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    通过上市公司在业绩快报中披露的主要财务数据和指标，计算单季度主要财务指标
    https://udata.hs.net/datas/396/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持输入多个股票代码
    report_date   String  否      申报日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                        类型      长度  说明                                备注
    ----------------------------  ------  ------  ----------------------------------  ------
    prod_code                     String    20    证劵代码
    report_date                   String    20    申报日期
    operating_revenue_d           Float     16.4  营业收入（单季度）
    operating_profit_d            Float     16.4  营业利润（单季度）
    total_profit_d                Float     16.4  利润总额（单季度）
    np_parent_company_owners_d    Float     16.4  归属母公司股东的净利润（单季度）
    net_profit_cut_d              Float     16.4  扣除非经常性损益净利润（单季度）
    operating_revenue_div         Float     16.4  主营业务收入单季度同比
    operating_profit_div          Float     16.4  营业利润单季度同比
    total_profit_div              Float     16.4  利润总额单季度同比
    np_parent_company_owners_div  Float     16.4  归属母公司股东的净利润单季度同比
    net_profit_cut_div            Float     16.4  扣除非经常性损益后净利润单季度同比
    operating_revenue_mom         Float     16.4  主营业务收入单季度环比
    operating_profit_mom          Float     16.4  营业利润单季度环比
    total_profit_mom              Float     16.4  利润总额单季度环比
    np_parent_company_owners_mom  Float     16.4  归属母公司股东的净利润单季度环比
    net_profit_cut_div_mom        Float     16.4  扣除非经常性损益后净利润单季度环比
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'operating_revenue_d': 'float', 'operating_profit_d': 'float', 'total_profit_d': 'float', 'np_parent_company_owners_d': 'float', 'net_profit_cut_d': 'float', 'operating_revenue_div': 'float', 'operating_profit_div': 'float', 'total_profit_div': 'float', 'np_parent_company_owners_div': 'float', 'net_profit_cut_div': 'float', 'operating_revenue_mom': 'float', 'operating_profit_mom': 'float', 'total_profit_mom': 'float', 'np_parent_company_owners_mom': 'float', 'net_profit_cut_div_mom': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'operating_revenue_d': '营业收入（单季度）', 'operating_profit_d': '营业利润（单季度）', 'total_profit_d': '利润总额（单季度）', 'np_parent_company_owners_d': '归属母公司股东的净利润（单季度）', 'net_profit_cut_d': '扣除非经常性损益净利润（单季度）', 'operating_revenue_div': '主营业务收入单季度同比', 'operating_profit_div': '营业利润单季度同比', 'total_profit_div': '利润总额单季度同比', 'np_parent_company_owners_div': '归属母公司股东的净利润单季度同比', 'net_profit_cut_div': '扣除非经常性损益后净利润单季度同比', 'operating_revenue_mom': '主营业务收入单季度环比', 'operating_profit_mom': '营业利润单季度环比', 'total_profit_mom': '利润总额单季度环比', 'np_parent_company_owners_mom': '归属母公司股东的净利润单季度环比', 'net_profit_cut_div_mom': '扣除非经常性损益后净利润单季度环比'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="performance_letters_q", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def main_composition(en_prod_code: str = None, report_date: str = None, classification: str = None, order: str = None, fields: str = None, **kwargs)->Query:
    """
    按报告期统计上市公司主营业务构成情况，支持同时输入多个股票代码或报告期
    https://udata.hs.net/datas/397/
    <参数>
    名称            类型    必填    说明              备注
    --------------  ------  ------  ----------------  -----------------------------------------------------------------------------------
    en_prod_code    String  否      证劵代码          默认参数为：600570.SH,支持同时输入多个证券代码
    report_date     String  否      申报日期          默认参数为：2020-12-31,支持同时输入多个报告期，报告期为季报、中报、年报等定期报告期
    classification  String  否      分类              默认参数为0,0-行业,1-产品,2-地区
    order           String  否      页内记录排序规则  默认参数为0,0-第一名,1-第二名,2-第三名,3-第四名,4-第五名
    fields          String  否      字段集合          默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明                         备注
    --------------------  ------  ------  ---------------------------  ------
    prod_code             String    20    证劵代码
    report_date           String    20    申报日期
    main_oper_income      String   200    主营业务收入金额占比
    moi_project           String    20    主营构成（按行业）-项目名称
    moi_main_oper_income  Float     16.4  主营构成（按行业）-项目收入
    moi_main_oper_cost    Float     16.4  主营构成（按行业）-项目成本
    moi_moc               Float     16.4  主营构成（按行业）-项目利润
    mop_project           String    20    主营构成（按产品）-项目名称
    mop_main_oper_income  Float     16.4  主营构成（按产品）-项目收入
    mop_main_oper_cost    Float     16.4  主营构成（按产品）-项目成本
    mop_moc               Float     16.4  主营构成（按产品）-项目利润
    mor_project           String    20    主营构成（按地区）-项目名称
    mor_main_oper_income  Float     16.4  主营构成（按地区）-项目收入
    mor_main_oper_cost    Float     16.4  主营构成（按地区）-项目成本
    mor_moc               Float     16.4  主营构成（按地区）-项目利润
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'main_oper_income': 'str', 'moi_project': 'str', 'moi_main_oper_income': 'float', 'moi_main_oper_cost': 'float', 'moi_moc': 'float', 'mop_project': 'str', 'mop_main_oper_income': 'float', 'mop_main_oper_cost': 'float', 'mop_moc': 'float', 'mor_project': 'str', 'mor_main_oper_income': 'float', 'mor_main_oper_cost': 'float', 'mor_moc': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'main_oper_income': '主营业务收入金额占比', 'moi_project': '主营构成（按行业）-项目名称', 'moi_main_oper_income': '主营构成（按行业）-项目收入', 'moi_main_oper_cost': '主营构成（按行业）-项目成本', 'moi_moc': '主营构成（按行业）-项目利润', 'mop_project': '主营构成（按产品）-项目名称', 'mop_main_oper_income': '主营构成（按产品）-项目收入', 'mop_main_oper_cost': '主营构成（按产品）-项目成本', 'mop_moc': '主营构成（按产品）-项目利润', 'mor_project': '主营构成（按地区）-项目名称', 'mor_main_oper_income': '主营构成（按地区）-项目收入', 'mor_main_oper_cost': '主营构成（按地区）-项目成本', 'mor_moc': '主营构成（按地区）-项目利润'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="main_composition", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def trading_parties(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    统计公司向前5名供应商的采购情况及向前5名客户的销售情况等，支持同时输入多个股票代码或报告期
    https://udata.hs.net/datas/398/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH
    report_date   String  否      申报日期  默认参数为：2020-12-31
    report_type   String  否      财报类型  默认参数为1，1-合并未调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                                 类型      长度  说明                          备注
    -------------------------------------  ------  ------  ----------------------------  ------
    prod_code                              String    20    证劵代码
    report_date                            String    20    申报日期
    operating_revenue_top5_customers       Float     16.4  营业收入-前5名客户
    operating_revenue_rate_top5_customers  Float     16.4  营业收入占比-前5名客户
    main_oper_income_rate_top5_customers   Float     16.4  主营业务收入占比-前5名客户
    purchase_top5_supplier                 Float     16.4  采购额-前5名供应商
    purchase_rate_top5_supplier            Float     16.4  采购额占比-前5名供应商
    main_oper_cost_rate_top5_supplier      Float     16.4  主营业务成本占比-前5名供应商
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'operating_revenue_top5_customers': 'float', 'operating_revenue_rate_top5_customers': 'float', 'main_oper_income_rate_top5_customers': 'float', 'purchase_top5_supplier': 'float', 'purchase_rate_top5_supplier': 'float', 'main_oper_cost_rate_top5_supplier': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'operating_revenue_top5_customers': '营业收入-前5名客户', 'operating_revenue_rate_top5_customers': '营业收入占比-前5名客户', 'main_oper_income_rate_top5_customers': '主营业务收入占比-前5名客户', 'purchase_top5_supplier': '采购额-前5名供应商', 'purchase_rate_top5_supplier': '采购额占比-前5名供应商', 'main_oper_cost_rate_top5_supplier': '主营业务成本占比-前5名供应商'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="trading_parties", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def audit_opinion(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    中介机构对公司季度、半年度、年度经营情况的评价，包括公司招股以来的历次纪录，支持同时输入多个股票代码
    https://udata.hs.net/datas/399/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期，报告期为季报、中报、年报等定期报告期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明            备注
    --------------------  ------  ------  --------------  ------
    prod_code             String      20  证劵代码
    report_date           String      20  申报日期
    accounting_firm       String      20  审计单位
    signature_accountant  String      20  签字注册会计师
    audit_opinion_type    String      20  审计意见
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'accounting_firm': 'str', 'signature_accountant': 'str', 'audit_opinion_type': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'accounting_firm': '审计单位', 'signature_accountant': '签字注册会计师', 'audit_opinion_type': '审计意见'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="audit_opinion", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def per_share_index(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期公布的财务科目数据衍生而来的每股指标，若某个报告期的数据有多次调整，则该表展示最新合并调整
    https://udata.hs.net/datas/400/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ,0-合并未调整,1-合并调整,2-母公司未调整,3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                          类型      长度  说明                                备注
    ------------------------------  ------  ------  ----------------------------------  ------
    prod_code                       String    20    证劵代码
    report_date                     String    20    申报日期
    basic_eps                       Float     16.4  每股收益EPS-基本
    diluted_eps                     Float     16.4  每股收益EPS-稀释
    basic_eps_cut                   Float     16.4  每股收益EPS-扣除／基本
    diluted_eps_cut                 Float     16.4  每股收益EPS-扣除／稀释
    naps                            Float     16.4  每股净资产BPS
    net_operate_cash_flow_ps        Float     16.4  每股经营活动产生的现金流量净额
    np_parent_company_owners_t      Float     16.4  每股收益EPS-期末股本摊薄
    new_np_parent_company_owners_t  Float     16.4  每股收益EPS-最新股本摊薄
    net_profit_cut_t                Float     16.4  每股收益EPS-扣除/期末股本摊薄
    new_net_profit_cut_t            Float     16.4  每股收益EPS-扣除/最新股本摊薄
    eps_ttm                         Float     16.4  每股收益EPS（TTM）
    se_without_mi_t                 Float     16.4  每股净资产BPS（最新股本摊薄）
    net_operate_cash_flow_ps_ttm    Float     16.4  每股经营活动产生的现金流量净额_TTM
    total_operating_revenue_ps      Float     16.4  每股营业总收入
    operating_revenue_ps            Float     16.4  每股营业收入
    operating_revenue_ps_ttm        Float     16.4  每股营业收入（TTM）
    ebit_ps                         Float     16.4  每股息税前利润
    capital_surplus_fund_ps         Float     16.4  每股资本公积
    surplus_reserve_fund_ps         Float     16.4  每股盈余公积
    undivided_profit                Float     16.4  每股未分配利润
    retained_earnings_ps            Float     16.4  每股留存收益
    cash_flowps                     Float     16.4  每股现金流量净额
    cash_flowps_ttm                 Float     16.4  每股现金流量净额（TTM）
    enterprise_fcf_ps               Float     16.4  每股企业自由现金流量
    shareholder_fcf_ps              Float     16.4  每股股东自由现金流量
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'basic_eps': 'float', 'diluted_eps': 'float', 'basic_eps_cut': 'float', 'diluted_eps_cut': 'float', 'naps': 'float', 'net_operate_cash_flow_ps': 'float', 'np_parent_company_owners_t': 'float', 'new_np_parent_company_owners_t': 'float', 'net_profit_cut_t': 'float', 'new_net_profit_cut_t': 'float', 'eps_ttm': 'float', 'se_without_mi_t': 'float', 'net_operate_cash_flow_ps_ttm': 'float', 'total_operating_revenue_ps': 'float', 'operating_revenue_ps': 'float', 'operating_revenue_ps_ttm': 'float', 'ebit_ps': 'float', 'capital_surplus_fund_ps': 'float', 'surplus_reserve_fund_ps': 'float', 'undivided_profit': 'float', 'retained_earnings_ps': 'float', 'cash_flowps': 'float', 'cash_flowps_ttm': 'float', 'enterprise_fcf_ps': 'float', 'shareholder_fcf_ps': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'basic_eps': '每股收益EPS-基本', 'diluted_eps': '每股收益EPS-稀释', 'basic_eps_cut': '每股收益EPS-扣除／基本', 'diluted_eps_cut': '每股收益EPS-扣除／稀释', 'naps': '每股净资产BPS', 'net_operate_cash_flow_ps': '每股经营活动产生的现金流量净额', 'np_parent_company_owners_t': '每股收益EPS-期末股本摊薄', 'new_np_parent_company_owners_t': '每股收益EPS-最新股本摊薄', 'net_profit_cut_t': '每股收益EPS-扣除/期末股本摊薄', 'new_net_profit_cut_t': '每股收益EPS-扣除/最新股本摊薄', 'eps_ttm': '每股收益EPS（TTM）', 'se_without_mi_t': '每股净资产BPS（最新股本摊薄）', 'net_operate_cash_flow_ps_ttm': '每股经营活动产生的现金流量净额_TTM', 'total_operating_revenue_ps': '每股营业总收入', 'operating_revenue_ps': '每股营业收入', 'operating_revenue_ps_ttm': '每股营业收入（TTM）', 'ebit_ps': '每股息税前利润', 'capital_surplus_fund_ps': '每股资本公积', 'surplus_reserve_fund_ps': '每股盈余公积', 'undivided_profit': '每股未分配利润', 'retained_earnings_ps': '每股留存收益', 'cash_flowps': '每股现金流量净额', 'cash_flowps_ttm': '每股现金流量净额（TTM）', 'enterprise_fcf_ps': '每股企业自由现金流量', 'shareholder_fcf_ps': '每股股东自由现金流量'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="per_share_index", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def profitability(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期公布的财务科目数据衍生而来盈利能力相关指标，若某个报告期的数据有多次调整，则该表展示最新合
    https://udata.hs.net/datas/401/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ,0-合并未调整1-合并调整2-母公司未调整3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                       类型      长度  说明                            备注
    ---------------------------  ------  ------  ------------------------------  ------
    prod_code                    String    20    证劵代码
    roe                          Float     16.4  净资产收益率ROE-摊薄（公布值）
    roe_weighted                 Float     16.4  净资产收益率ROE-加权（公布值）
    roe_avg                      Float     16.4  净资产收益率-平均
    roe_cut                      Float     16.4  净资产收益率_扣除,摊薄
    roe_cut_weighted             Float     16.4  净资产收益率（扣除-加权）
    roe_cut_avg                  Float     16.4  净资产收益率ROE（扣除-平均）
    roe_avg_year                 Float     16.4  净资产收益率-年化
    net_profit_cut_sewi          Float     16.4  净资产收益率ROE-增发条件
    total_assets                 Float     16.4  总资产报酬率
    total_assets_year            Float     16.4  总资产报酬率-年化
    roa                          Float     16.4  总资产净利率ROA
    roa_year                     Float     16.4  总资产净利率-年化
    roic                         Float     16.4  投入资本回报率
    roic_ttm                     Float     16.4  投入资本回报率（TTM）
    rop                          Float     16.4  人力投入回报率
    net_profit_ratio             Float     16.4  销售净利率
    gross_income_ratio           Float     16.4  销售毛利率
    sales_cost_ratio             Float     16.4  销售成本率
    period_costs_rate            Float     16.4  销售期间费用率
    total_profit_cost_ratio      Float     16.4  成本费用利润率
    np_to_tor                    Float     16.4  净利润／营业总收入
    operating_profit_to_tor      Float     16.4  营业利润／营业总收入
    ebit_to_tor                  Float     16.4  息税前利润／营业总收入
    ebitda                       Float     16.4  息税折旧摊销前利润
    t_operating_cost_to_tor      Float     16.4  营业总成本／营业总收入
    operating_expense_rate       Float     16.4  销售费用／营业总收入
    admini_expense_rate          Float     16.4  管理费用／营业总收入
    financial_expense_rate       Float     16.4  财务费用／营业总收入
    asset_impa_loss_to_tor       Float     16.4  资产减值损失／营业总收入
    asset_impa_loss_or           Float     16.4  资产减值损失／营业利润
    roe_ttm                      Float     16.4  净资产收益率ROE（TTM）
    roa_ebit_ttm                 Float     16.4  总资产收益率ROA（TTM）
    roa_ttm                      Float     16.4  总资产净利率（TTM）
    net_profit_ratio_ttm         Float     16.4  销售净利率_TTM
    gross_income_ratio_ttm       Float     16.4  销售毛利率（TTM）
    period_costs_rate_ttm        Float     16.4  销售期间费用率_TTM
    np_to_tor_ttm                Float     16.4  净利润／营业总收入_TTM
    operating_profit_to_tor_ttm  Float     16.4  营业利润／营业总收入_TTM
    ebit_to_tor_ttm              Float     16.4  息税前利润／营业总收入_TTM
    t_operating_cost_to_tor_ttm  Float     16.4  营业总成本／营业总收入_TTM
    operating_expense_rate_ttm   Float     16.4  销售费用／营业总收入_TTM
    admini_expense_rate_ttm      Float     16.4  管理费用／营业总收入_TTM
    financial_expense_rate_ttm   Float     16.4  财务费用／营业总收入_TTM
    asset_impa_loss_to_tor_ttm   Float     16.4  资产减值损失／营业总收入_TTM
    asset_impa_loss_or_ttm       Float     16.4  资产减值损失／营业利润（TTM）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'roe': 'float', 'roe_weighted': 'float', 'roe_avg': 'float', 'roe_cut': 'float', 'roe_cut_weighted': 'float', 'roe_cut_avg': 'float', 'roe_avg_year': 'float', 'net_profit_cut_sewi': 'float', 'total_assets': 'float', 'total_assets_year': 'float', 'roa': 'float', 'roa_year': 'float', 'roic': 'float', 'roic_ttm': 'float', 'rop': 'float', 'net_profit_ratio': 'float', 'gross_income_ratio': 'float', 'sales_cost_ratio': 'float', 'period_costs_rate': 'float', 'total_profit_cost_ratio': 'float', 'np_to_tor': 'float', 'operating_profit_to_tor': 'float', 'ebit_to_tor': 'float', 'ebitda': 'float', 't_operating_cost_to_tor': 'float', 'operating_expense_rate': 'float', 'admini_expense_rate': 'float', 'financial_expense_rate': 'float', 'asset_impa_loss_to_tor': 'float', 'asset_impa_loss_or': 'float', 'roe_ttm': 'float', 'roa_ebit_ttm': 'float', 'roa_ttm': 'float', 'net_profit_ratio_ttm': 'float', 'gross_income_ratio_ttm': 'float', 'period_costs_rate_ttm': 'float', 'np_to_tor_ttm': 'float', 'operating_profit_to_tor_ttm': 'float', 'ebit_to_tor_ttm': 'float', 't_operating_cost_to_tor_ttm': 'float', 'operating_expense_rate_ttm': 'float', 'admini_expense_rate_ttm': 'float', 'financial_expense_rate_ttm': 'float', 'asset_impa_loss_to_tor_ttm': 'float', 'asset_impa_loss_or_ttm': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'roe': '净资产收益率ROE-摊薄（公布值）', 'roe_weighted': '净资产收益率ROE-加权（公布值）', 'roe_avg': '净资产收益率-平均', 'roe_cut': '净资产收益率_扣除,摊薄', 'roe_cut_weighted': '净资产收益率（扣除-加权）', 'roe_cut_avg': '净资产收益率ROE（扣除-平均）', 'roe_avg_year': '净资产收益率-年化', 'net_profit_cut_sewi': '净资产收益率ROE-增发条件', 'total_assets': '总资产报酬率', 'total_assets_year': '总资产报酬率-年化', 'roa': '总资产净利率ROA', 'roa_year': '总资产净利率-年化', 'roic': '投入资本回报率', 'roic_ttm': '投入资本回报率（TTM）', 'rop': '人力投入回报率', 'net_profit_ratio': '销售净利率', 'gross_income_ratio': '销售毛利率', 'sales_cost_ratio': '销售成本率', 'period_costs_rate': '销售期间费用率', 'total_profit_cost_ratio': '成本费用利润率', 'np_to_tor': '净利润／营业总收入', 'operating_profit_to_tor': '营业利润／营业总收入', 'ebit_to_tor': '息税前利润／营业总收入', 'ebitda': '息税折旧摊销前利润', 't_operating_cost_to_tor': '营业总成本／营业总收入', 'operating_expense_rate': '销售费用／营业总收入', 'admini_expense_rate': '管理费用／营业总收入', 'financial_expense_rate': '财务费用／营业总收入', 'asset_impa_loss_to_tor': '资产减值损失／营业总收入', 'asset_impa_loss_or': '资产减值损失／营业利润', 'roe_ttm': '净资产收益率ROE（TTM）', 'roa_ebit_ttm': '总资产收益率ROA（TTM）', 'roa_ttm': '总资产净利率（TTM）', 'net_profit_ratio_ttm': '销售净利率_TTM', 'gross_income_ratio_ttm': '销售毛利率（TTM）', 'period_costs_rate_ttm': '销售期间费用率_TTM', 'np_to_tor_ttm': '净利润／营业总收入_TTM', 'operating_profit_to_tor_ttm': '营业利润／营业总收入_TTM', 'ebit_to_tor_ttm': '息税前利润／营业总收入_TTM', 't_operating_cost_to_tor_ttm': '营业总成本／营业总收入_TTM', 'operating_expense_rate_ttm': '销售费用／营业总收入_TTM', 'admini_expense_rate_ttm': '管理费用／营业总收入_TTM', 'financial_expense_rate_ttm': '财务费用／营业总收入_TTM', 'asset_impa_loss_to_tor_ttm': '资产减值损失／营业总收入_TTM', 'asset_impa_loss_or_ttm': '资产减值损失／营业利润（TTM）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="profitability", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def growth_capacity(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期公布的财务科目数据衍生出的衡量成长能力的相关指标，主要从同比角度分析，展示同比增长率。若某
    https://udata.hs.net/datas/402/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ,0-合并未调整1-合并调整2-母公司未调整3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                          类型      长度  说明                                                备注
    ------------------------------  ------  ------  --------------------------------------------------  ------
    prod_code                       String    20    证劵代码
    report_date                     String    20    申报日期
    basic_eps                       Float     16.4  每股收益-基本（同比增长率）
    diluted_eps                     Float     16.4  每股收益-稀释（同比增长率）
    net_operate_cash_flow_ps        Float     16.4  每股经营活动产生的现金流量净额（同比增长率）
    total_operating_revenue         Float     16.4  营业总收入（同比增长率）
    operating_revenue               Float     16.4  营业收入（同比增长率）
    operating_cost                  Float     16.4  营业成本（同比增长率）
    gross_profit                    Float     16.4  毛利（同比增长率）
    operating_profit                Float     16.4  营业利润（同比增长率）
    total_profit                    Float     16.4  利润总额（同比增长率）
    net_profit                      Float     16.4  净利润（同比增长率）
    np_parent_company_owners        Float     16.4  归属母公司股东的净利润（同比增长率）
    np_parent_non_recu              Float     16.4  归属母公司股东的净利润扣除非经常损益（同比增长率）
    net_operate_cash_flow           Float     16.4  经营活动产生的现金流量净额（同比增长率）
    roe                             Float     16.4  净资产收益率（同比增长率）
    goods_sale_service_render_cash  Float     16.4  销售商品、提供劳务收到的现金（同比增长率）
    goods_and_services_cash_paid    Float     16.4  购买商品、接受劳务支付的现金（同比增长率）
    staff_behalf_paid               Float     16.4  支付给职工以及为职工支付的现金（同比增长率）
    net_profit_cashcover            Float     16.4  净利润现金含量（同比增长率）
    se_without_mi                   Float     16.4  净资产（同比增长率）
    total_liability                 Float     16.4  总负债（同比增长率）
    total_assets                    Float     16.4  总资产（同比增长率）
    cash_equivalent_increase        Float     16.4  现金净流量（同比增长率）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'basic_eps': 'float', 'diluted_eps': 'float', 'net_operate_cash_flow_ps': 'float', 'total_operating_revenue': 'float', 'operating_revenue': 'float', 'operating_cost': 'float', 'gross_profit': 'float', 'operating_profit': 'float', 'total_profit': 'float', 'net_profit': 'float', 'np_parent_company_owners': 'float', 'np_parent_non_recu': 'float', 'net_operate_cash_flow': 'float', 'roe': 'float', 'goods_sale_service_render_cash': 'float', 'goods_and_services_cash_paid': 'float', 'staff_behalf_paid': 'float', 'net_profit_cashcover': 'float', 'se_without_mi': 'float', 'total_liability': 'float', 'total_assets': 'float', 'cash_equivalent_increase': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'basic_eps': '每股收益-基本（同比增长率）', 'diluted_eps': '每股收益-稀释（同比增长率）', 'net_operate_cash_flow_ps': '每股经营活动产生的现金流量净额（同比增长率）', 'total_operating_revenue': '营业总收入（同比增长率）', 'operating_revenue': '营业收入（同比增长率）', 'operating_cost': '营业成本（同比增长率）', 'gross_profit': '毛利（同比增长率）', 'operating_profit': '营业利润（同比增长率）', 'total_profit': '利润总额（同比增长率）', 'net_profit': '净利润（同比增长率）', 'np_parent_company_owners': '归属母公司股东的净利润（同比增长率）', 'np_parent_non_recu': '归属母公司股东的净利润扣除非经常损益（同比增长率）', 'net_operate_cash_flow': '经营活动产生的现金流量净额（同比增长率）', 'roe': '净资产收益率（同比增长率）', 'goods_sale_service_render_cash': '销售商品、提供劳务收到的现金（同比增长率）', 'goods_and_services_cash_paid': '购买商品、接受劳务支付的现金（同比增长率）', 'staff_behalf_paid': '支付给职工以及为职工支付的现金（同比增长率）', 'net_profit_cashcover': '净利润现金含量（同比增长率）', 'se_without_mi': '净资产（同比增长率）', 'total_liability': '总负债（同比增长率）', 'total_assets': '总资产（同比增长率）', 'cash_equivalent_increase': '现金净流量（同比增长率）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="growth_capacity", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def du_pont_analysis(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期公布的财务科目数据，利用杜邦分析方法衍生衡量公司主要财务分析指标，若某个报告期的数据有多次
    https://udata.hs.net/datas/403/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ,0-合并未调整1-合并调整2-母公司未调整3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                          类型      长度  说明                          备注
    ------------------------------  ------  ------  ----------------------------  ------
    prod_code                       String    20    证劵代码
    report_date                     String    20    申报日期
    np_parent_sew                   Float     16.4  权益净利率ROE
    net_profit_ratio                Float     16.4  销售净利率
    operating_ni_to_tp              Float     16.4  净利润/利润总额
    total_profit_ebit               Float     16.4  利润总额/息税前利润
    ebit_to_tor                     Float     16.4  息税前利润／营业总收入
    operating_revenue_ta            Float     16.4  资产周转率
    equity_multipler                Float     16.4  权益乘数
    np_parent_company_owners_ratio  Float     16.4  归属于母公司股东的净利润占比
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'np_parent_sew': 'float', 'net_profit_ratio': 'float', 'operating_ni_to_tp': 'float', 'total_profit_ebit': 'float', 'ebit_to_tor': 'float', 'operating_revenue_ta': 'float', 'equity_multipler': 'float', 'np_parent_company_owners_ratio': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'np_parent_sew': '权益净利率ROE', 'net_profit_ratio': '销售净利率', 'operating_ni_to_tp': '净利润/利润总额', 'total_profit_ebit': '利润总额/息税前利润', 'ebit_to_tor': '息税前利润／营业总收入', 'operating_revenue_ta': '资产周转率', 'equity_multipler': '权益乘数', 'np_parent_company_owners_ratio': '归属于母公司股东的净利润占比'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="du_pont_analysis", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def deri_fin_indicators(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    统计由上市公司的主要会计科目（合并报表）衍生出来的数据，三大财务报表中任意报表在某报告期的数据经历调
    https://udata.hs.net/datas/404/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ,0-合并未调整1-合并调整2-母公司未调整3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                              类型      长度  说明                             备注
    ----------------------------------  ------  ------  -------------------------------  ------
    prod_code                           String    20    证劵代码
    report_date                         String    20    申报日期
    interest_free_curr_liabilities      Float     16.4  无息流动负债
    interest_free_non_curr_liabilities  Float     16.4  无息非流动负债
    interest_bear_debt                  Float     16.4  带息债务
    net_debt                            Float     16.4  净债务
    total_paid_in_capital               Float     16.4  全部投入资本
    working_capital                     Float     16.4  营运资本
    net_working_capital                 Float     16.4  净营运资本
    net_tangible_assets                 Float     16.4  有形资产净值
    retained_earnings                   Float     16.4  留存收益
    non_recurring_profit_loss           Float     16.4  非经常性损益
    net_profit_cut                      Float     16.4  扣除非经常性损益后的净利润
    gross_profit                        Float     16.4  毛利
    net_income_from_operating           Float     16.4  经营活动净收益
    net_income_from_value_change        Float     16.4  价值变动净收益
    ebit                                Float     16.4  息税前利润
    ebitda                              Float     16.4  息税折旧摊销前利润
    total_operating_revenue_ttm         Float     16.4  营业总收入(TTM)
    total_operating_cost_ttm            Float     16.4  营业总成本(TTM)
    operating_revenue_ttm               Float     16.4  营业收入(TTM)
    operating_cost_ttm                  Float     16.4  营业成本-非金融类(TTM)
    operating_payout_ttm                Float     16.4  营业支出-金融类(TTM)
    gross_profit_ttm                    Float     16.4  毛利(TTM)
    operating_expense_ttm               Float     16.4  销售费用(TTM)
    administration_expense_ttm          Float     16.4  管理费用(TTM)
    financial_expense_ttm               Float     16.4  财务费用(TTM)
    asset_impairment_loss_ttm           Float     16.4  资产减值损失(TTM)
    net_income_from_operating_ttm       Float     16.4  经营活动净收益(TTM)
    net_income_from_value_change_ttm    Float     16.4  价值变动净收益(TTM)
    operating_profit_ttm                Float     16.4  营业利润(TTM)
    net_non_operating_income_ttm        Float     16.4  营业外收支净额(TTM)
    ebit_ttm                            Float     16.4  息税前利润(TTM)
    total_profit_ttm                    Float     16.4  利润总额(TTM)
    net_profit_ttm                      Float     16.4  净利润TTM
    np_parent_company_owners_ttm        Float     16.4  归属于母公司所有者的净利润TTM
    free_cash_flow_to_firm              Float     16.4  企业自由现金流量FCFF
    free_cash_flow_to_equity            Float     16.4  股权自由现金流量FCFE
    current_accrued_da                  Float     16.4  当期计提折旧与摊销
    sale_service_render_cash_ttm        Float     16.4  销售商品提供劳务收到的现金(TTM)
    net_operate_cash_flow_ttm           Float     16.4  经营活动现金净流量(TTM)
    net_invest_cash_flow_ttm            Float     16.4  投资活动现金净流量(TTM)
    net_finance_cash_flow_ttm           Float     16.4  筹资活动现金净流量(TTM)
    net_cash_flow_ttm                   Float     16.4  现金净流量(TTM)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'interest_free_curr_liabilities': 'float', 'interest_free_non_curr_liabilities': 'float', 'interest_bear_debt': 'float', 'net_debt': 'float', 'total_paid_in_capital': 'float', 'working_capital': 'float', 'net_working_capital': 'float', 'net_tangible_assets': 'float', 'retained_earnings': 'float', 'non_recurring_profit_loss': 'float', 'net_profit_cut': 'float', 'gross_profit': 'float', 'net_income_from_operating': 'float', 'net_income_from_value_change': 'float', 'ebit': 'float', 'ebitda': 'float', 'total_operating_revenue_ttm': 'float', 'total_operating_cost_ttm': 'float', 'operating_revenue_ttm': 'float', 'operating_cost_ttm': 'float', 'operating_payout_ttm': 'float', 'gross_profit_ttm': 'float', 'operating_expense_ttm': 'float', 'administration_expense_ttm': 'float', 'financial_expense_ttm': 'float', 'asset_impairment_loss_ttm': 'float', 'net_income_from_operating_ttm': 'float', 'net_income_from_value_change_ttm': 'float', 'operating_profit_ttm': 'float', 'net_non_operating_income_ttm': 'float', 'ebit_ttm': 'float', 'total_profit_ttm': 'float', 'net_profit_ttm': 'float', 'np_parent_company_owners_ttm': 'float', 'free_cash_flow_to_firm': 'float', 'free_cash_flow_to_equity': 'float', 'current_accrued_da': 'float', 'sale_service_render_cash_ttm': 'float', 'net_operate_cash_flow_ttm': 'float', 'net_invest_cash_flow_ttm': 'float', 'net_finance_cash_flow_ttm': 'float', 'net_cash_flow_ttm': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'interest_free_curr_liabilities': '无息流动负债', 'interest_free_non_curr_liabilities': '无息非流动负债', 'interest_bear_debt': '带息债务', 'net_debt': '净债务', 'total_paid_in_capital': '全部投入资本', 'working_capital': '营运资本', 'net_working_capital': '净营运资本', 'net_tangible_assets': '有形资产净值', 'retained_earnings': '留存收益', 'non_recurring_profit_loss': '非经常性损益', 'net_profit_cut': '扣除非经常性损益后的净利润', 'gross_profit': '毛利', 'net_income_from_operating': '经营活动净收益', 'net_income_from_value_change': '价值变动净收益', 'ebit': '息税前利润', 'ebitda': '息税折旧摊销前利润', 'total_operating_revenue_ttm': '营业总收入(TTM)', 'total_operating_cost_ttm': '营业总成本(TTM)', 'operating_revenue_ttm': '营业收入(TTM)', 'operating_cost_ttm': '营业成本-非金融类(TTM)', 'operating_payout_ttm': '营业支出-金融类(TTM)', 'gross_profit_ttm': '毛利(TTM)', 'operating_expense_ttm': '销售费用(TTM)', 'administration_expense_ttm': '管理费用(TTM)', 'financial_expense_ttm': '财务费用(TTM)', 'asset_impairment_loss_ttm': '资产减值损失(TTM)', 'net_income_from_operating_ttm': '经营活动净收益(TTM)', 'net_income_from_value_change_ttm': '价值变动净收益(TTM)', 'operating_profit_ttm': '营业利润(TTM)', 'net_non_operating_income_ttm': '营业外收支净额(TTM)', 'ebit_ttm': '息税前利润(TTM)', 'total_profit_ttm': '利润总额(TTM)', 'net_profit_ttm': '净利润TTM', 'np_parent_company_owners_ttm': '归属于母公司所有者的净利润TTM', 'free_cash_flow_to_firm': '企业自由现金流量FCFF', 'free_cash_flow_to_equity': '股权自由现金流量FCFE', 'current_accrued_da': '当期计提折旧与摊销', 'sale_service_render_cash_ttm': '销售商品提供劳务收到的现金(TTM)', 'net_operate_cash_flow_ttm': '经营活动现金净流量(TTM)', 'net_invest_cash_flow_ttm': '投资活动现金净流量(TTM)', 'net_finance_cash_flow_ttm': '筹资活动现金净流量(TTM)', 'net_cash_flow_ttm': '现金净流量(TTM)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="deri_fin_indicators", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def q_financial_indicator(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    本表收录自公布公司的单季主要财务指标，第一、三季度直接取公布值；第二季度数据＝半年度数据－第一季度数
    https://udata.hs.net/datas/405/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    report_date   String  否      申报日期  默认参数为：2020-12-31,支持同时输入多个报告期
    report_type   String  否      财报类型  默认参数为：0 ,0-合并未调整1-合并调整2-母公司未调整3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                              类型      长度  说明                                         备注
    ----------------------------------  ------  ------  -------------------------------------------  ------
    prod_code                           String    20    证劵代码
    report_date                         String    20    申报日期
    eps                                 Float     16.4  单季度.每股收益EPS
    net_profit_cut                      Float     16.4  扣除非经常性损益后的净利润
    net_income_from_operating           Float     16.4  单季度.经营活动净收益
    net_income_from_value_change        Float     16.4  单季度.价值变动净收益
    np_f_se_without_mi                  Float     16.4  单季度.净资产收益率ROE
    net_profit_nrp_swe                  Float     16.4  单季度.净资产收益率（扣除非经常损益）
    roa                                 Float     16.4  单季度.总资产净利率ROA
    net_profit_ratio                    Float     16.4  单季度.销售净利率
    gross_income_ratio                  Float     16.4  单季度.销售毛利率
    t_operating_cost_to_tor             Float     16.4  营业总成本／营业总收入
    operating_profit_to_tor             Float     16.4  营业利润／营业总收入
    np_to_tor                           Float     16.4  单季度.净利润/营业总收入
    operating_expense_rate              Float     16.4  单季度.销售费用/营业总收入
    admini_expense_rate                 Float     16.4  单季度.管理费用/营业总收入
    financial_expense_rate              Float     16.4  单季度.财务费用/营业总收入
    asset_impa_loss_or                  Float     16.4  单季度.资产减值损失/营业利润
    operating_ni_to_tp                  Float     16.4  单季度.经营活动净收益/利润总额
    value_change_ni_to_tp               Float     16.4  单季度.价值变动净收益/利润总额
    np_cut_to_tp                        Float     16.4  单季度.扣除非经常损益后的净利润/净利润
    sale_service_cash_to_or             Float     16.4  单季度.销售商品提供劳务收到的现金/营业收入
    cash_rate_of_sales                  Float     16.4  单季度.经营活动产生的现金流量净额/营业收入
    net_operate_cash_flow_rate          Float     16.4  单季度.经营活动产生的现金流量净额占比
    net_invest_cash_flow_rate           Float     16.4  单季度.投资活动产生的现金流量净额占比
    net_finance_cash_flow_rate          Float     16.4  单季度.筹资活动产生的现金流量净额占比
    oper_cycle                          Float     16.4  营业周期
    inventory_turnover_rate             Float     16.4  存货周转率
    inventory_turnover_days             Float     16.4  存货周转天数
    accounts_receivables_turnover_rate  Float     16.4  应收帐款周转率
    accounts_receivables_turnover_days  Float     16.4  应收帐款周转天数
    total_asset_turnover_rate           Float     16.4  总资产周转率
    current_assets_turnover_rate        Float     16.4  流动资产周转率
    fixed_asset_turnover_rate           Float     16.4  固定资产周转率
    eps_yoy                             Float     16.4  单季度.每股收益EPS同比增长率
    eps_mom                             Float     16.4  单季度.每股收益EPS环比增长率
    total_operating_revenue_yoy         Float     16.4  单季度.营业总收入同比增长率
    total_operating_revenue_mom         Float     16.4  单季度.营业总收入环比增长率
    operating_revenue_yoy               Float     16.4  单季度.营业收入同比增长率
    operating_revenue_mom               Float     16.4  单季度.营业收入环比增长率
    operating_cost_yoy                  Float     16.4  单季度.营业成本同比增长率
    operating_cost_mom                  Float     16.4  单季度.营业成本环比增长率
    gross_profit_yoy                    Float     16.4  单季度.毛利同比增长率
    gross_profit_mom                    Float     16.4  单季度.毛利环比增长率
    operating_profit_yoy                Float     16.4  单季度.营业利润同比增长率
    operating_profit_mom                Float     16.4  单季度.营业利润环比增长率
    net_profit_yoy                      Float     16.4  单季度.净利润同比增长率
    net_profit_mom                      Float     16.4  单季度.净利润环比增长率
    np_parent_company_cut_yoy           Float     16.4  单季度.归属母公司股东的净利润同比增长率
    np_parent_company_cut_mom           Float     16.4  单季度.归属母公司股东的净利润环比增长率
    net_profit_cut_yoy                  Float     16.4  单季度.扣除非经常性损益后的净利润同比增长率
    net_profit_cut_mom                  Float     16.4  单季度.扣除非经常性损益后的净利润环比增长率
    cash_equivalent_increase_yoy        Float     16.4  单季度.现金净流量同比增长率
    cash_equivalent_increase_mom        Float     16.4  单季度.现金净流量环比增长率
    net_operate_cash_flow_yoy           Float     16.4  单季度.经营性现金净流量同比增长率
    net_operate_cash_flow_mom           Float     16.4  单季度.经营性现金净流量环比增长率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'eps': 'float', 'net_profit_cut': 'float', 'net_income_from_operating': 'float', 'net_income_from_value_change': 'float', 'np_f_se_without_mi': 'float', 'net_profit_nrp_swe': 'float', 'roa': 'float', 'net_profit_ratio': 'float', 'gross_income_ratio': 'float', 't_operating_cost_to_tor': 'float', 'operating_profit_to_tor': 'float', 'np_to_tor': 'float', 'operating_expense_rate': 'float', 'admini_expense_rate': 'float', 'financial_expense_rate': 'float', 'asset_impa_loss_or': 'float', 'operating_ni_to_tp': 'float', 'value_change_ni_to_tp': 'float', 'np_cut_to_tp': 'float', 'sale_service_cash_to_or': 'float', 'cash_rate_of_sales': 'float', 'net_operate_cash_flow_rate': 'float', 'net_invest_cash_flow_rate': 'float', 'net_finance_cash_flow_rate': 'float', 'oper_cycle': 'float', 'inventory_turnover_rate': 'float', 'inventory_turnover_days': 'float', 'accounts_receivables_turnover_rate': 'float', 'accounts_receivables_turnover_days': 'float', 'total_asset_turnover_rate': 'float', 'current_assets_turnover_rate': 'float', 'fixed_asset_turnover_rate': 'float', 'eps_yoy': 'float', 'eps_mom': 'float', 'total_operating_revenue_yoy': 'float', 'total_operating_revenue_mom': 'float', 'operating_revenue_yoy': 'float', 'operating_revenue_mom': 'float', 'operating_cost_yoy': 'float', 'operating_cost_mom': 'float', 'gross_profit_yoy': 'float', 'gross_profit_mom': 'float', 'operating_profit_yoy': 'float', 'operating_profit_mom': 'float', 'net_profit_yoy': 'float', 'net_profit_mom': 'float', 'np_parent_company_cut_yoy': 'float', 'np_parent_company_cut_mom': 'float', 'net_profit_cut_yoy': 'float', 'net_profit_cut_mom': 'float', 'cash_equivalent_increase_yoy': 'float', 'cash_equivalent_increase_mom': 'float', 'net_operate_cash_flow_yoy': 'float', 'net_operate_cash_flow_mom': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'eps': '单季度.每股收益EPS', 'net_profit_cut': '扣除非经常性损益后的净利润', 'net_income_from_operating': '单季度.经营活动净收益', 'net_income_from_value_change': '单季度.价值变动净收益', 'np_f_se_without_mi': '单季度.净资产收益率ROE', 'net_profit_nrp_swe': '单季度.净资产收益率（扣除非经常损益）', 'roa': '单季度.总资产净利率ROA', 'net_profit_ratio': '单季度.销售净利率', 'gross_income_ratio': '单季度.销售毛利率', 't_operating_cost_to_tor': '营业总成本／营业总收入', 'operating_profit_to_tor': '营业利润／营业总收入', 'np_to_tor': '单季度.净利润/营业总收入', 'operating_expense_rate': '单季度.销售费用/营业总收入', 'admini_expense_rate': '单季度.管理费用/营业总收入', 'financial_expense_rate': '单季度.财务费用/营业总收入', 'asset_impa_loss_or': '单季度.资产减值损失/营业利润', 'operating_ni_to_tp': '单季度.经营活动净收益/利润总额', 'value_change_ni_to_tp': '单季度.价值变动净收益/利润总额', 'np_cut_to_tp': '单季度.扣除非经常损益后的净利润/净利润', 'sale_service_cash_to_or': '单季度.销售商品提供劳务收到的现金/营业收入', 'cash_rate_of_sales': '单季度.经营活动产生的现金流量净额/营业收入', 'net_operate_cash_flow_rate': '单季度.经营活动产生的现金流量净额占比', 'net_invest_cash_flow_rate': '单季度.投资活动产生的现金流量净额占比', 'net_finance_cash_flow_rate': '单季度.筹资活动产生的现金流量净额占比', 'oper_cycle': '营业周期', 'inventory_turnover_rate': '存货周转率', 'inventory_turnover_days': '存货周转天数', 'accounts_receivables_turnover_rate': '应收帐款周转率', 'accounts_receivables_turnover_days': '应收帐款周转天数', 'total_asset_turnover_rate': '总资产周转率', 'current_assets_turnover_rate': '流动资产周转率', 'fixed_asset_turnover_rate': '固定资产周转率', 'eps_yoy': '单季度.每股收益EPS同比增长率', 'eps_mom': '单季度.每股收益EPS环比增长率', 'total_operating_revenue_yoy': '单季度.营业总收入同比增长率', 'total_operating_revenue_mom': '单季度.营业总收入环比增长率', 'operating_revenue_yoy': '单季度.营业收入同比增长率', 'operating_revenue_mom': '单季度.营业收入环比增长率', 'operating_cost_yoy': '单季度.营业成本同比增长率', 'operating_cost_mom': '单季度.营业成本环比增长率', 'gross_profit_yoy': '单季度.毛利同比增长率', 'gross_profit_mom': '单季度.毛利环比增长率', 'operating_profit_yoy': '单季度.营业利润同比增长率', 'operating_profit_mom': '单季度.营业利润环比增长率', 'net_profit_yoy': '单季度.净利润同比增长率', 'net_profit_mom': '单季度.净利润环比增长率', 'np_parent_company_cut_yoy': '单季度.归属母公司股东的净利润同比增长率', 'np_parent_company_cut_mom': '单季度.归属母公司股东的净利润环比增长率', 'net_profit_cut_yoy': '单季度.扣除非经常性损益后的净利润同比增长率', 'net_profit_cut_mom': '单季度.扣除非经常性损益后的净利润环比增长率', 'cash_equivalent_increase_yoy': '单季度.现金净流量同比增长率', 'cash_equivalent_increase_mom': '单季度.现金净流量环比增长率', 'net_operate_cash_flow_yoy': '单季度.经营性现金净流量同比增长率', 'net_operate_cash_flow_mom': '单季度.经营性现金净流量环比增长率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="q_financial_indicator", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def valuation_info(en_prod_code: str = None, trading_date: str = None, year: str = None, fields: str = None, **kwargs)->Query:
    """
    利用定期报告中披露的财务指标对上市公司做估值分析，主要包括股息率、市净率、市销率、市现率等额指标，支
    https://udata.hs.net/datas/406/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    trading_date  String  否      交易日期  默认参数为：2020-12-31,支持同时输入多个报告期
    year          String  否      年度      默认参数设置为：2020
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                              类型      长度  说明                              备注
    ----------------------------------  ------  ------  --------------------------------  ------
    prod_code                           String    20    证劵代码
    trading_date                        String    20    交易日期
    total_market_value                  Float     16.4  总市值
    total_market_value2                 Float     16.4  总市值2
    total_market_value_zjh              Float     16.4  总市值（证监会算法）
    pe_ttm                              Float     16.4  市盈率PE（TTM）
    pe_ttm_deduct_non_recurring_profit  Float     16.4  市盈率PE（TTM,扣除非经常性损益）
    pe_rate_lyr                         Float     16.4  市盈率（最新年报，LYR）
    pb_lf                               Float     16.4  市净率PB（最新财报，LF）
    ps_ttm                              Float     16.4  市销率PS（TTM）
    ps_lyr                              Float     16.4  市销率PS（最新年报，LYR）
    pcf_oper_cashflow_ttm               Float     16.4  市现率PCF（经营现金流TTM）
    pcf_net_cashflow_ttm                Float     16.4  市现率PCF（现金净流量TTM）
    pcf_oper_cashflow_lyr               Float     16.4  市现率PCF（经营现金流LYR）
    pcf_net_cashflow_lyr                Float     16.4  市现率PCF（经营净流量LYR）
    dividend_rate                       Float     16.4  股息率（年初至最新报告期）
    total_cash_divi_com_rate_rmb        Float     16.4  股息率（近12个月）
    total_cash_divi_com_rate_rmb2       Float     16.4  股息率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'total_market_value': 'float', 'total_market_value2': 'float', 'total_market_value_zjh': 'float', 'pe_ttm': 'float', 'pe_ttm_deduct_non_recurring_profit': 'float', 'pe_rate_lyr': 'float', 'pb_lf': 'float', 'ps_ttm': 'float', 'ps_lyr': 'float', 'pcf_oper_cashflow_ttm': 'float', 'pcf_net_cashflow_ttm': 'float', 'pcf_oper_cashflow_lyr': 'float', 'pcf_net_cashflow_lyr': 'float', 'dividend_rate': 'float', 'total_cash_divi_com_rate_rmb': 'float', 'total_cash_divi_com_rate_rmb2': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'total_market_value': '总市值', 'total_market_value2': '总市值2', 'total_market_value_zjh': '总市值（证监会算法）', 'pe_ttm': '市盈率PE（TTM）', 'pe_ttm_deduct_non_recurring_profit': '市盈率PE（TTM,扣除非经常性损益）', 'pe_rate_lyr': '市盈率（最新年报，LYR）', 'pb_lf': '市净率PB（最新财报，LF）', 'ps_ttm': '市销率PS（TTM）', 'ps_lyr': '市销率PS（最新年报，LYR）', 'pcf_oper_cashflow_ttm': '市现率PCF（经营现金流TTM）', 'pcf_net_cashflow_ttm': '市现率PCF（现金净流量TTM）', 'pcf_oper_cashflow_lyr': '市现率PCF（经营现金流LYR）', 'pcf_net_cashflow_lyr': '市现率PCF（经营净流量LYR）', 'dividend_rate': '股息率（年初至最新报告期）', 'total_cash_divi_com_rate_rmb': '股息率（近12个月）', 'total_cash_divi_com_rate_rmb2': '股息率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="valuation_info", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def corporation_value(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司A股市值、B股市值、企业价值等指标，支持同时输入多个股票代码
    https://udata.hs.net/datas/407/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：600570.SH,支持同时输入多个证券代码
    trading_date  String  否      交易日期  默认参数为：2020-12-31,支持同时输入多个报告期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                             备注
    --------------------------  ------  ------  -------------------------------  ------
    prod_code                   String    20    证劵代码
    trading_date                String    20    交易日期
    enterprise_value1           Float     16.4  企业价值（含货币资金）
    enterprise_value2           Float     16.4  企业价值（剔除货币资金）
    enterprise_times            Float     16.4  企业倍数
    total_market_value          Float     16.4  总市值（不可回测）
    a_shares_market_value       Float     16.4  A股市值（含限售股）
    a1_shares_market_value      Float     16.4  A股市值（不含限售股）
    b_shares_market_value       Float     16.4  B股市值（含限售股，交易币种）
    b_shares_market_value_rmb   Float     16.4  B股市值（含限售股，人民币）
    b1_shares_market_value      Float     16.4  B股市值（不含限售股，交易币种）
    b1_shares_market_value_rmb  Float     16.4  B股市值（不含限售股，人民币）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'enterprise_value1': 'float', 'enterprise_value2': 'float', 'enterprise_times': 'float', 'total_market_value': 'float', 'a_shares_market_value': 'float', 'a1_shares_market_value': 'float', 'b_shares_market_value': 'float', 'b_shares_market_value_rmb': 'float', 'b1_shares_market_value': 'float', 'b1_shares_market_value_rmb': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'enterprise_value1': '企业价值（含货币资金）', 'enterprise_value2': '企业价值（剔除货币资金）', 'enterprise_times': '企业倍数', 'total_market_value': '总市值（不可回测）', 'a_shares_market_value': 'A股市值（含限售股）', 'a1_shares_market_value': 'A股市值（不含限售股）', 'b_shares_market_value': 'B股市值（含限售股，交易币种）', 'b_shares_market_value_rmb': 'B股市值（含限售股，人民币）', 'b1_shares_market_value': 'B股市值（不含限售股，交易币种）', 'b1_shares_market_value_rmb': 'B股市值（不含限售股，人民币）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="corporation_value", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_main_composition(secu_code: str = None, start_date: str = None, end_date: str = None, classification: str = None, fields: str = None, **kwargs)->Query:
    """
    获取主营构成明细数据，主营收入，毛利和同比情况。
    https://udata.hs.net/datas/659/
    <参数>
    名称            类型    必填    说明      备注
    --------------  ------  ------  --------  ----------------------------------------------------
    secu_code       String  否      证券代码  股票代码，不支持多个，输入单代码，例如 688001
    start_date      String  否      开始日期  格式 2019-01-01 查询报告期开始日期，默认当日一年内。
    end_date        String  否      截止日期  格式 2019-12-31 查询报告期截止日期，默认当日。
    classification  String  否      分类      分类方式：10-按行业，20-按产品，30-按地区；默认全部
    fields          String  否      字段集合
    <返回结果>
    参数名                     类型      长度  说明              备注
    -------------------------  ------  ------  ----------------  -----------------------------------------
    secu_code                  String    20    证券代码          股票代码
    secu_abbr                  String    20    证券简称          股票简称
    secu_market                String    16.4  证券市场          股票市场：83-上海 90-深圳
    end_date                   String    20    报告期            报告期
    classification             String    16.4  分类              分类方式：10-按行业，20-按产品，30-按地区
    project                    String    20    经营项目名称      经营项目名称
    main_oper_income           Float     16.4  主营业务收入      主营业务收入(元)
    main_oper_cost             Float     16.4  主营业务成本      主营业务成本(元)
    gross_profit               Float     16.4  毛利              毛利(元)
    main_income_grow_rate_yoy  Float     16.4  主营业务收入同比  主营业务收入同比(%)
    main_cost_grow_rate_yoy    Float     16.4  主营业务成本同比  主营业务成本同比(%)
    gross_profit_yoy           Float     16.4  毛利同比          毛利同比(%)
    gross_profit_per           Float     16.4  毛利占比          毛利占比(%)
    main_oper_income_rate      Float     16.4  主营业务收入占比  主营业务收入占比(%)
    main_oper_cost_rate        Float     16.4  主营业务成本占比  主营业务成本占比(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'end_date': 'str', 'classification': 'str', 'project': 'str', 'main_oper_income': 'float', 'main_oper_cost': 'float', 'gross_profit': 'float', 'main_income_grow_rate_yoy': 'float', 'main_cost_grow_rate_yoy': 'float', 'gross_profit_yoy': 'float', 'gross_profit_per': 'float', 'main_oper_income_rate': 'float', 'main_oper_cost_rate': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'end_date': '报告期', 'classification': '分类', 'project': '经营项目名称', 'main_oper_income': '主营业务收入', 'main_oper_cost': '主营业务成本', 'gross_profit': '毛利', 'main_income_grow_rate_yoy': '主营业务收入同比', 'main_cost_grow_rate_yoy': '主营业务成本同比', 'gross_profit_yoy': '毛利同比', 'gross_profit_per': '毛利占比', 'main_oper_income_rate': '主营业务收入占比', 'main_oper_cost_rate': '主营业务成本占比'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="stock_main_composition", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_main_business_total(secu_code: str = None, classification: str = None, fields: str = None, **kwargs)->Query:
    """
    提供A股公司所属行业，主营收入金额，业务收入、成本、利润占比，毛利率等。
    https://udata.hs.net/datas/660/
    <参数>
    名称            类型    必填    说明      备注
    --------------  ------  ------  --------  ------------------------------------------------------------------
    secu_code       String  否      证券代码  A股代码，支持单只股票入参，如 600570 。
    classification  String  否      分类      分类方式：10-按行业，20-按产品，30-按地区。不入参默认 10，按行业。
    fields          String  否      字段集合
    <返回结果>
    参数名                     类型      长度  说明                  备注
    -------------------------  ------  ------  --------------------  -----------------------
    secu_code                  String    20    证券代码              股票代码
    secu_abbr                  String    20    证券简称              股票简称
    report_date                String    20    申报日期              申报日期
    industry                   String    20    项目名称              行业/地区/业务/产品名称
    main_oper_income           Float     16.4  主营业务收入金额      主营业务收入金额(元)
    main_oper_income_rate      Float     16.4  主营业务收入所占比率  主营业务收入所占比率(%)
    main_oper_cost             Float     16.4  主营业务成本金额      主营业务成本金额(元)
    main_oper_cost_rate        Float     16.4  主营业务成本所占比率  主营业务成本所占比率(%)
    main_oper_profit           Float     16.4  主营业务利润金额      主营业务利润金额(元)
    main_oper_profit_rate      Float     16.4  主营业务利润所占比率  主营业务利润所占比率(%)
    gross_profit_rate          Float     16.4  毛利率                毛利率(%)
    main_income_grow_rate_yoy  Float     16.4  收入同比增长          收入同比增长(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'report_date': 'str', 'industry': 'str', 'main_oper_income': 'float', 'main_oper_income_rate': 'float', 'main_oper_cost': 'float', 'main_oper_cost_rate': 'float', 'main_oper_profit': 'float', 'main_oper_profit_rate': 'float', 'gross_profit_rate': 'float', 'main_income_grow_rate_yoy': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'report_date': '申报日期', 'industry': '项目名称', 'main_oper_income': '主营业务收入金额', 'main_oper_income_rate': '主营业务收入所占比率', 'main_oper_cost': '主营业务成本金额', 'main_oper_cost_rate': '主营业务成本所占比率', 'main_oper_profit': '主营业务利润金额', 'main_oper_profit_rate': '主营业务利润所占比率', 'gross_profit_rate': '毛利率', 'main_income_grow_rate_yoy': '收入同比增长'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="stock_main_business_total", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def stock_main_business_indurstry(en_prod_code: str = None, order: str = None, **kwargs)->Query:
    """
    提供证券公司所属行业，主营收入金额，业务收入、成本、利润占比，毛利率等。
    https://udata.hs.net/datas/661/
    <参数>
    名称          类型    必填    说明              备注
    ------------  ------  ------  ----------------  -----------------------------------------------------------------------------------------
    en_prod_code  String  否      产品代码集        "股票代码列表:支持多股票，以"",""分隔 约束： 1、个股类接口该字段必选 2、最多支持20只股票"
    order         String  否      页内记录排序规则  返回结果的页码，默认为1
    <返回结果>
    参数名                     类型      长度  说明                  备注
    -------------------------  ------  ------  --------------------  ------
    report_date                String    20    申报日期
    industry                   String    20    行业名称
    main_oper_income           Float     16.4  主营业务收入金额
    main_oper_income_rate      Float     16.4  主营业务收入所占比率
    main_oper_cost             Float     16.4  主营业务成本金额
    main_oper_cost_rate        Float     16.4  主营业务成本所占比率
    main_oper_profit           Float     16.4  主营业务利润金额
    main_oper_profit_rate      Float     16.4  主营业务利润所占比率
    gross_profit_rate          Float     16.4  毛利率
    main_income_grow_rate_yoy  Float     16.4  收入同比增长
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'report_date': 'str', 'industry': 'str', 'main_oper_income': 'float', 'main_oper_income_rate': 'float', 'main_oper_cost': 'float', 'main_oper_cost_rate': 'float', 'main_oper_profit': 'float', 'main_oper_profit_rate': 'float', 'gross_profit_rate': 'float', 'main_income_grow_rate_yoy': 'float'}
    column_name_dict = {'report_date': '申报日期', 'industry': '行业名称', 'main_oper_income': '主营业务收入金额', 'main_oper_income_rate': '主营业务收入所占比率', 'main_oper_cost': '主营业务成本金额', 'main_oper_cost_rate': '主营业务成本所占比率', 'main_oper_profit': '主营业务利润金额', 'main_oper_profit_rate': '主营业务利润所占比率', 'gross_profit_rate': '毛利率', 'main_income_grow_rate_yoy': '收入同比增长'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="finance_data", method="stock_main_business_indurstry", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def star_ipodeclare(report_status: str = None, fields: str = None, **kwargs)->Query:
    """
    上海证券交易所公布的首次公开发行科创板A股申报企业基本信息，包括申报企业名称、所属板块、证监会所属行业代码以及涉及到的保荐机构、会计师事务所、律师事务所等内容
    https://udata.hs.net/datas/547/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ----------------------------------------------
    report_status  String  否      申报状态  默认取1，1-已受理
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明                备注
    -------------------  ------  ------  ------------------  ------
    secu_code            String      20  证券代码
    secu_abbr            String      20  证券简称
    accept_date          String      20  受理日期
    report_status        String      20  申报状态
    industry_code_csrc   String      20  所属证监会行业代码
    industry_name_csrc   String      20  所属证监会行业名称
    sponsor_institution  String      20  保荐机构
    accounting_firm      String      20  会计师事务所
    law_firm             String      20  律师事务所
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'accept_date': 'str', 'report_status': 'str', 'industry_code_csrc': 'str', 'industry_name_csrc': 'str', 'sponsor_institution': 'str', 'accounting_firm': 'str', 'law_firm': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'accept_date': '受理日期', 'report_status': '申报状态', 'industry_code_csrc': '所属证监会行业代码', 'industry_name_csrc': '所属证监会行业名称', 'sponsor_institution': '保荐机构', 'accounting_firm': '会计师事务所', 'law_firm': '律师事务所'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="star_market", method="star_ipodeclare", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def star_companyprofile(secu_code: str = None, fields: str = None, **kwargs)->Query:
    """
    科创板公司的基本情况，包括：联系方式、注册信息、背景资料等内容
    https://udata.hs.net/datas/548/
    <参数>
    名称       类型    必填    说明      备注
    ---------  ------  ------  --------  ----------------------------------------------
    secu_code  String  否      证券代码  默认参数为：X21398
    fields     String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                备注
    --------------------------  ------  ------  ------------------  ------
    secu_code                   String    20    证券代码
    secu_abbr                   String    20    证券简称
    chi_name                    String    20    公司名称
    eng_name                    String    20    英文名称
    establishment_date          String    20    成立日期
    uniform_social_credit_code  String    20    统一社会信用代码
    legal_repr                  String    20    法人代表
    regcapital                  Float     16.4  注册资本(元)
    reg_addr                    String    20    注册地址
    province                    String    20    注册地省份
    general_manager             String    20    总经理
    secretary                   String    20    董事会秘书
    contact_tel                 String    20    联系电话
    email                       String    20    公司邮箱
    website                     String    20    网址
    brief_intro                 String    20    公司简介
    industry_name_csrc          String    20    所属证监会行业名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'chi_name': 'str', 'eng_name': 'str', 'establishment_date': 'str', 'uniform_social_credit_code': 'str', 'legal_repr': 'str', 'regcapital': 'float', 'reg_addr': 'str', 'province': 'str', 'general_manager': 'str', 'secretary': 'str', 'contact_tel': 'str', 'email': 'str', 'website': 'str', 'brief_intro': 'str', 'industry_name_csrc': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'chi_name': '公司名称', 'eng_name': '英文名称', 'establishment_date': '成立日期', 'uniform_social_credit_code': '统一社会信用代码', 'legal_repr': '法人代表', 'regcapital': '注册资本(元)', 'reg_addr': '注册地址', 'province': '注册地省份', 'general_manager': '总经理', 'secretary': '董事会秘书', 'contact_tel': '联系电话', 'email': '公司邮箱', 'website': '网址', 'brief_intro': '公司简介', 'industry_name_csrc': '所属证监会行业名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="star_market", method="star_companyprofile", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_basic(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取股票的基本信息，包含股票交易代码、股票简称、上市时间、上市状态、上市板块等信息，可以同时输入多个股票代码
    https://udata.hs.net/datas/551/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：400002.OC，由交易代码+'.OC'组合而成，支持输入多个股票代码
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型      长度  说明      备注
    -------------  ------  ------  --------  ------
    prod_code      String      20  产品代码
    secu_code      String      20  证券代码
    secu_abbr      String      20  证券简称
    secu_category  String      20  证券类别
    listed_date    String      20  挂牌日期
    trans_type     String      20  交易类型
    listed_state   String      20  上市状态
    secu_market    String      20  证券市场
    listed_sector  String      20  上市板块
    isin_code      String      20  ISIN代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_category': 'str', 'listed_date': 'str', 'trans_type': 'str', 'listed_state': 'str', 'secu_market': 'str', 'listed_sector': 'str', 'isin_code': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_category': '证券类别', 'listed_date': '挂牌日期', 'trans_type': '交易类型', 'listed_state': '上市状态', 'secu_market': '证券市场', 'listed_sector': '上市板块', 'isin_code': 'ISIN代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_basic", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_company(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取公司的基本信息，包含公司名称、注册信息、公司简介、公司属性、经营范围、主营业务、所在城市、联系电话等内容，可以同时输入多个股票代码
    https://udata.hs.net/datas/552/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：400002.OC，由交易代码+'.OC'组合而成，支持输入多个股票代码
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明                       备注
    -------------------  ------  ------  -------------------------  ------
    prod_code            String      20  产品代码
    chi_name             String      20  公司中文名称
    eng_name             String      20  公司英文名称
    establishment_date   String      20  公司成立日期
    regcapital           String      20  注册资本
    legal_repr           String      20  法人代表
    major_business       String      20  主营业务
    minor_business       String      20  经营范围-兼营
    state                String      20  省份
    city_code            String      20  地级行政区
    reg_addr             String      20  公司注册地址 公司注册地址
    reg_zip_code         String      20  公司注册地址邮编
    offece_addr          String      20  公司办公地址
    office_zip           String      20  公司办公地址邮编
    tel                  String      20  联系电话
    fax                  String      20  传真
    email                String      20  电子邮件
    website              String      20  公司网址
    disclosure_web       String      20  信息披露网址
    disclosure_paper     String      20  信息披露报纸
    business_reg_number  String      20  工商登记号
    economic_nature      String      20  经济性质
    company_nature       String      20  企业性质
    company_cval         String      20  企业属性
    company_type         String      20  公司类型
    brief_intro          String      20  公司介绍
    reg_org              String      20  登记机关
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'chi_name': 'str', 'eng_name': 'str', 'establishment_date': 'str', 'regcapital': 'str', 'legal_repr': 'str', 'major_business': 'str', 'minor_business': 'str', 'state': 'str', 'city_code': 'str', 'reg_addr': 'str', 'reg_zip_code': 'str', 'offece_addr': 'str', 'office_zip': 'str', 'tel': 'str', 'fax': 'str', 'email': 'str', 'website': 'str', 'disclosure_web': 'str', 'disclosure_paper': 'str', 'business_reg_number': 'str', 'economic_nature': 'str', 'company_nature': 'str', 'company_cval': 'str', 'company_type': 'str', 'brief_intro': 'str', 'reg_org': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'chi_name': '公司中文名称', 'eng_name': '公司英文名称', 'establishment_date': '公司成立日期', 'regcapital': '注册资本', 'legal_repr': '法人代表', 'major_business': '主营业务', 'minor_business': '经营范围-兼营', 'state': '省份', 'city_code': '地级行政区', 'reg_addr': '公司注册地址 公司注册地址', 'reg_zip_code': '公司注册地址邮编', 'offece_addr': '公司办公地址', 'office_zip': '公司办公地址邮编', 'tel': '联系电话', 'fax': '传真', 'email': '电子邮件', 'website': '公司网址', 'disclosure_web': '信息披露网址', 'disclosure_paper': '信息披露报纸', 'business_reg_number': '工商登记号', 'economic_nature': '经济性质', 'company_nature': '企业性质', 'company_cval': '企业属性', 'company_type': '公司类型', 'brief_intro': '公司介绍', 'reg_org': '登记机关'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_company", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_leader(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司历任管理层任职信息，包括董事长、总经理、财务总监、监事会秘书等高管，支持同时输入多个股票代码
    https://udata.hs.net/datas/553/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：400028.OC，由交易代码+'.OC'组合而成，支持输入多个股票代码
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                           类型      长度  说明              备注
    -------------------------------  ------  ------  ----------------  ------
    prod_code                        String      20  产品代码
    chairman_current                 String      20  董事长(现任)
    chairman_former                  String      20  董事长(历任)
    general_manager_current          String      20  总经理(现任)
    general_manager_former           String      20  总经理(历任)
    chief_financial_officer_current  String      20  财务总监(现任)
    chief_financial_officer_former   String      20  财务总监(历任)
    secretary_current                String      20  董事会秘书(现任)
    secretary_former                 String      20  董事会秘书(历任)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'chairman_current': 'str', 'chairman_former': 'str', 'general_manager_current': 'str', 'general_manager_former': 'str', 'chief_financial_officer_current': 'str', 'chief_financial_officer_former': 'str', 'secretary_current': 'str', 'secretary_former': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'chairman_current': '董事长(现任)', 'chairman_former': '董事长(历任)', 'general_manager_current': '总经理(现任)', 'general_manager_former': '总经理(历任)', 'chief_financial_officer_current': '财务总监(现任)', 'chief_financial_officer_former': '财务总监(历任)', 'secretary_current': '董事会秘书(现任)', 'secretary_former': '董事会秘书(历任)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_leader", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_leader_num(en_prod_code: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司管理层成员数量，包括董事会、监事会、高级管理人员的成员数量，支持同时输入多个股票代码和截止日期
    https://udata.hs.net/datas/554/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：400005.OC
    end_date      String  否      截止日期  默认参数为：2015-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名          类型      长度  说明              备注
    --------------  ------  ------  ----------------  ------
    prod_code       String    20    产品代码
    end_date        String    20    截止日期
    bd_number       Float     16.4  董事会成员数量
    bs_number       Float     16.4  监事会成员数量
    manager_number  Float     16.4  高级管理人员数量
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'end_date': 'str', 'bd_number': 'float', 'bs_number': 'float', 'manager_number': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'end_date': '截止日期', 'bd_number': '董事会成员数量', 'bs_number': '监事会成员数量', 'manager_number': '高级管理人员数量'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_leader_num", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_industry(en_prod_code: str = None, level: str = None, fields: str = None, **kwargs)->Query:
    """
    输入股票代码，可以获得股票在证监会行业、国民经济行业、三板管理型行业、三板投资型行业等多个不同行业下对应的行业信息，支持同时输入多个股票代码查询
    https://udata.hs.net/datas/555/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：400001.OC，由交易代码+'.OC'组合而成，支持输入多个股票代码
    level         String  否      等级      默认参数为：0，0-全部，1-一级，2-二级
    fields        String  否      字段集合
    <返回结果>
    参数名                         类型      长度  说明                    备注
    -----------------------------  ------  ------  ----------------------  ------
    prod_code                      String    20    产品代码
    level                          Float     16.4  等级
    industry_code_csrc             String    20    所属证监会行业代码
    industry_name_csrc             String    20    所属证监会行业名称
    industry_code                  String    20    行业类
    industry_name                  String    20    行业类名称
    industry_code_neeq_management  String    20    所属三板管理型行业代码
    industry_name_neeq_management  String    20    所属三板管理型行业名称
    industry_code_neeq_investment  String    20    所属三板投资型行业代码
    industry_name_neeq_investment  String    20    所属三板投资型行业名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'level': 'float', 'industry_code_csrc': 'str', 'industry_name_csrc': 'str', 'industry_code': 'str', 'industry_name': 'str', 'industry_code_neeq_management': 'str', 'industry_name_neeq_management': 'str', 'industry_code_neeq_investment': 'str', 'industry_name_neeq_investment': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'level': '等级', 'industry_code_csrc': '所属证监会行业代码', 'industry_name_csrc': '所属证监会行业名称', 'industry_code': '行业类', 'industry_name': '行业类名称', 'industry_code_neeq_management': '所属三板管理型行业代码', 'industry_name_neeq_management': '所属三板管理型行业名称', 'industry_code_neeq_investment': '所属三板投资型行业代码', 'industry_name_neeq_investment': '所属三板投资型行业名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_industry", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_perform_fore(en_prod_code: str = None, report_date: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    统计挂牌公司对未来报告期本公司业绩的预计情况，包括业绩预计类型、预计内容、具体预计值等信息。可支持同时输入多个证券代码和报告期。
    https://udata.hs.net/datas/662/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date   String  否      申报日期  报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    unit          String  否      单位      {"元":"0","十元":"1","百元":"2","千元":"3","万元":"4","十万":"5","百万":"6","千万":"7","亿":"8","十亿":"9"}
    fields        String  否      字段集合
    <返回结果>
    参数名                  类型      长度  说明                  备注
    ----------------------  ------  ------  --------------------  -----------------------------------------------------------------------
    prod_code               String    20    产品代码              证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date             String    20    申报日期              报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    forcast_type            String    20    报告类型              报告类型
    eprofit_floor           Float     16.4  预计净利润下限        预计利润下限
    eprofit_ceiling         Float     16.4  预计净利润上限        预计利润上限
    eprofit_range_floor     Float     16.4  预计利润幅度下限      预计利润幅度下限
    eprofit_range_ceiling   Float     16.4  预计利润幅度上限      预计利润幅度上限
    eearning_floor          Float     16.4  预计收入下限          预计收入下限
    eearning_ceiling        Float     16.4  预计收入上限          预计收入上限
    eearning_range_floor    Float     16.4  预计收入幅度下限      预计收入幅度下限
    eearning_range_ceiling  Float     16.4  预计收入幅度上限      预计收入幅度上限
    eeps_floor              Float     16.4  预计每股收益下限      预计每股收益下限
    eeps_ceiling            Float     16.4  预计每股收益上限      预计每股收益上限
    eeps_range_ceiling      Float     16.4  预计每股收益幅度上限  预计每股收益幅度上限
    eeps_range_floor        Float     16.4  预计每股收益幅度下限  预计每股收益幅度下限
    result_statement        String    20    业绩预计结果说明      业绩预计结果说明
    forcast_content         String    20    业绩预计内容描述      业绩预计内容描述
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'forcast_type': 'str', 'eprofit_floor': 'float', 'eprofit_ceiling': 'float', 'eprofit_range_floor': 'float', 'eprofit_range_ceiling': 'float', 'eearning_floor': 'float', 'eearning_ceiling': 'float', 'eearning_range_floor': 'float', 'eearning_range_ceiling': 'float', 'eeps_floor': 'float', 'eeps_ceiling': 'float', 'eeps_range_ceiling': 'float', 'eeps_range_floor': 'float', 'result_statement': 'str', 'forcast_content': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'forcast_type': '报告类型', 'eprofit_floor': '预计净利润下限', 'eprofit_ceiling': '预计净利润上限', 'eprofit_range_floor': '预计利润幅度下限', 'eprofit_range_ceiling': '预计利润幅度上限', 'eearning_floor': '预计收入下限', 'eearning_ceiling': '预计收入上限', 'eearning_range_floor': '预计收入幅度下限', 'eearning_range_ceiling': '预计收入幅度上限', 'eeps_floor': '预计每股收益下限', 'eeps_ceiling': '预计每股收益上限', 'eeps_range_ceiling': '预计每股收益幅度上限', 'eeps_range_floor': '预计每股收益幅度下限', 'result_statement': '业绩预计结果说明', 'forcast_content': '业绩预计内容描述'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_perform_fore", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_dupont_analysis(en_prod_code: str = None, report_date: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期公布的财务科目数据，利用杜邦分析方法衍生衡量公司主要财务分析指标，若某个报告期的数据有多次调整，则该表展示最新合并调整数据；若某报告期暂未披露调整后数据，则展示调整前的合并数据，支持同时输入多个股票代码和报告期。
    https://udata.hs.net/datas/663/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date   String  否      申报日期  报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    unit          String  否      单位      {"原始值":"0","%":"1","‰":"2"}
    fields        String  否      字段集合
    <返回结果>
    参数名                          类型      长度  说明                             备注
    ------------------------------  ------  ------  -------------------------------  -----------------------------------------------------------------------
    prod_code                       String    20    产品代码                         证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date                     String    20    申报日期                         报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    roe_avg                         Float     16.4  净资产收益率(ROE)-平均           净资产收益率(ROE)-平均
    roa                             Float     16.4  资产净利率                       资产净利率
    equity_multipler                Float     16.4  权益乘数-期末                    权益乘数-期末
    equity_multipler_avg            Float     16.4  权益乘数-平均                    权益乘数-平均
    net_profit_ratio                Float     16.4  净利润/营业总收入（销售净利率）  净利润/营业总收入（销售净利率）
    total_asset_turnover_rate       Float     16.4  总资产周转率                     总资产周转率
    np_parent_company_owners_ratio  Float     16.4  归属母公司股东的净利润/净利润    归属母公司股东的净利润/净利润
    operating_ni_to_tp              Float     16.4  净利润/利润总额                  净利润/利润总额
    total_profit_ebit               Float     16.4  利润总额/息税前利润              利润总额/息税前利润
    ebit_to_tor                     Float     16.4  息税前利润／营业总收入           息税前利润/营业总收入
    debt_assets_ratio               Float     16.4  资产负债率                       资产负债率
    net_profit                      Float     16.4  净利润                           净利润
    total_operating_revenue         Float     16.4  营业总收入                       营业总收入
    total_assets_avg                Float     16.4  平均资产总额                     平均资产总额
    total_debit                     Float     16.4  负债总额                         负债总额
    total_assets                    Float     16.4  资产总额                         资产总额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'roe_avg': 'float', 'roa': 'float', 'equity_multipler': 'float', 'equity_multipler_avg': 'float', 'net_profit_ratio': 'float', 'total_asset_turnover_rate': 'float', 'np_parent_company_owners_ratio': 'float', 'operating_ni_to_tp': 'float', 'total_profit_ebit': 'float', 'ebit_to_tor': 'float', 'debt_assets_ratio': 'float', 'net_profit': 'float', 'total_operating_revenue': 'float', 'total_assets_avg': 'float', 'total_debit': 'float', 'total_assets': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'roe_avg': '净资产收益率(ROE)-平均', 'roa': '资产净利率', 'equity_multipler': '权益乘数-期末', 'equity_multipler_avg': '权益乘数-平均', 'net_profit_ratio': '净利润/营业总收入（销售净利率）', 'total_asset_turnover_rate': '总资产周转率', 'np_parent_company_owners_ratio': '归属母公司股东的净利润/净利润', 'operating_ni_to_tp': '净利润/利润总额', 'total_profit_ebit': '利润总额/息税前利润', 'ebit_to_tor': '息税前利润／营业总收入', 'debt_assets_ratio': '资产负债率', 'net_profit': '净利润', 'total_operating_revenue': '营业总收入', 'total_assets_avg': '平均资产总额', 'total_debit': '负债总额', 'total_assets': '资产总额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_dupont_analysis", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_share_stru(en_prod_code: str = None, end_date: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    收录上市公司股本结构历次变动明细指标，可同时输入多个股票代码查询，返回小于等于查询日期的最新一条记录。可支持同时输入多个证券代码和截止日期。
    https://udata.hs.net/datas/664/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    end_date      String  否      截止日期  截止日期，格式为YYYY-MM-DD，如2015-12-31，可支持输入多个截止日期。
    unit          String  否      单位      {"股":"0","十股":"1","百股":"2","千股":"3","万股":"4","十万股":"5","百万股":"6","千万股":"7","亿股":"8","十亿股":"9"}
    fields        String  否      字段集合
    <返回结果>
    参数名                类型      长度  说明                           备注
    --------------------  ------  ------  -----------------------------  -----------------------------------------------------------------------
    prod_code             String    20    产品代码                       证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    end_date              String    20    截止日期                       截止日期，格式为YYYY-MM-DD，如2015-12-31，可支持输入多个截止日期。
    total_shares          Float     16.4  总股本                         总股本
    unlimited_shares      Float     16.4  无限售股份总数                 无限售股份总数
    unlimited_proportion  Float     16.4  无限售股份比例                 无限售股份比例
    unlimited_number_a    Float     16.4  无限售:控股股东和实际制人数量  无限售:控股股东和实际制人数量
    unlimited_ratio_a     Float     16.4  无限售:控股股东和实际制人比例  无限售:控股股东和实际制人比例
    unlimited_number_b    Float     16.4  无限售:董事、监事、高管数量    无限售:董事、监事、高管数量
    unlimited_ratio_b     Float     16.4  无限售:董事、监事、高管比例    无限售:董事、监事、高管比例
    unlimited_number_c    Float     16.4  无限售:核心员工数量            无限售:核心员工数量
    unlimited_ratio_c     Float     16.4  无限售:核心员工比例            无限售:核心员工比例
    unlimited_number_d    Float     16.4  其它无限售数量                 其它无限售数量
    unlimited_ratio_d     Float     16.4  其它无限售比例                 其它无限售比例
    restricted_number_e   Float     16.4  有限售股份总数                 有限售股份总数
    restricted_ratio_e    Float     16.4  有限售股份比例                 有限售股份比例
    restricted_number_f   Float     16.4  有限售:控股股东和实际制人数量  有限售:控股股东和实际制人数量
    restricted_ratio_f    Float     16.4  有限售:控股股东和实际制人比例  有限售:控股股东和实际制人比例
    restricted_number_g   Float     16.4  有限售:董事、监事、高管数量    有限售:董事、监事、高管数量
    restricted_ratio_g    Float     16.4  有限售:董事、监事、高管比例    有限售:董事、监事、高管比例
    restricted_number_h   Float     16.4  有限售:核心员工数量            有限售:核心员工数量
    restricted_ratio_h    Float     16.4  有限售:核心员工比例            有限售:核心员工比例
    restricted_number_i   Float     16.4  其它有限售数量                 其它有限售数量
    restricted_ratio_i    Float     16.4  其它有限售比例                 其它有限售比例
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'end_date': 'str', 'total_shares': 'float', 'unlimited_shares': 'float', 'unlimited_proportion': 'float', 'unlimited_number_a': 'float', 'unlimited_ratio_a': 'float', 'unlimited_number_b': 'float', 'unlimited_ratio_b': 'float', 'unlimited_number_c': 'float', 'unlimited_ratio_c': 'float', 'unlimited_number_d': 'float', 'unlimited_ratio_d': 'float', 'restricted_number_e': 'float', 'restricted_ratio_e': 'float', 'restricted_number_f': 'float', 'restricted_ratio_f': 'float', 'restricted_number_g': 'float', 'restricted_ratio_g': 'float', 'restricted_number_h': 'float', 'restricted_ratio_h': 'float', 'restricted_number_i': 'float', 'restricted_ratio_i': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'end_date': '截止日期', 'total_shares': '总股本', 'unlimited_shares': '无限售股份总数', 'unlimited_proportion': '无限售股份比例', 'unlimited_number_a': '无限售:控股股东和实际制人数量', 'unlimited_ratio_a': '无限售:控股股东和实际制人比例', 'unlimited_number_b': '无限售:董事、监事、高管数量', 'unlimited_ratio_b': '无限售:董事、监事、高管比例', 'unlimited_number_c': '无限售:核心员工数量', 'unlimited_ratio_c': '无限售:核心员工比例', 'unlimited_number_d': '其它无限售数量', 'unlimited_ratio_d': '其它无限售比例', 'restricted_number_e': '有限售股份总数', 'restricted_ratio_e': '有限售股份比例', 'restricted_number_f': '有限售:控股股东和实际制人数量', 'restricted_ratio_f': '有限售:控股股东和实际制人比例', 'restricted_number_g': '有限售:董事、监事、高管数量', 'restricted_ratio_g': '有限售:董事、监事、高管比例', 'restricted_number_h': '有限售:核心员工数量', 'restricted_ratio_h': '有限售:核心员工比例', 'restricted_number_i': '其它有限售数量', 'restricted_ratio_i': '其它有限售比例'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_share_stru", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_per_share_index(en_prod_code: str = None, report_date: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    根据报告期公布的财务科目数据衍生而来的每股指标，若某个报告期的数据有多次调整，则该表展示最新合并调整数据；若某报告期暂未披露调整后数据，则展示调整前的合并数据，支持同时输入多个股票代码和报告期。
    https://udata.hs.net/datas/665/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date   String  否      申报日期  报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    unit          String  否      单位      {"元":"0","十元":"1","百元":"2","千元":"3","万元":"4","十万":"5","百万":"6","千万":"7","亿":"8","十亿":"9"}
    fields        String  否      字段集合
    <返回结果>
    参数名                          类型      长度  说明                                备注
    ------------------------------  ------  ------  ----------------------------------  -----------------------------------------------------------------------
    prod_code                       String    20    产品代码                            证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date                     String    20    申报日期                            报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    basic_eps                       Float     16.4  每股收益EPS-基本                    每股收益EPS-基本
    diluted_eps                     Float     16.4  每股收益EPS-稀释                    每股收益EPS-稀释
    np_parent_company_owners_t      Float     16.4  每股收益EPS-期末股本摊薄            每股收益EPS-期末股本摊薄
    net_profit_cut_t                Float     16.4  每股收益EPS-扣除/期末股本摊薄       每股收益EPS-扣除/期末股本摊薄
    new_np_parent_company_owners_t  Float     16.4  每股收益EPS-最新股本摊薄            每股收益EPS-最新股本摊薄
    naps                            Float     16.4  每股净资产BPS                       每股净资产BPS
    se_without_mi_t                 Float     16.4  每股净资产BPS-最新股本摊薄          每股净资产BPS-最新股本摊薄
    total_operating_revenue_ps      Float     16.4  每股营业总收入                      每股营业总收入
    operating_revenue_ps            Float     16.4  每股营业收入                        每股营业收入
    operating_revenue_ps_ttm        Float     16.4  每股营业收入_TTM                    每股营业收入_TTM
    oper_profit_ps                  Float     16.4  每股营业利润                        每股营业利润
    capital_surplus_fund_ps         Float     16.4  每股资本公积金                      每股资本公积金
    surplus_reserve_fund_ps         Float     16.4  每股盈余公积                        每股盈余公积
    undivided_profit                Float     16.4  每股未分配利润                      每股未分配利润
    retained_earnings_ps            Float     16.4  每股留存收益                        每股留存收益
    net_operate_cash_flow_ps        Float     16.4  每股经营活动产生的现金流量净额      每股经营活动产生的现金流量净额
    net_operate_cash_flow_ps_ttm    Float     16.4  每股经营活动产生的现金流量净额_TTM  每股经营活动产生的现金流量净额_TTM
    cash_flowps                     Float     16.4  每股现金流量净额                    每股现金流量净额
    cash_flowps_ttm                 Float     16.4  每股现金流量净额_TTM                每股现金流量净额_TTM
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'basic_eps': 'float', 'diluted_eps': 'float', 'np_parent_company_owners_t': 'float', 'net_profit_cut_t': 'float', 'new_np_parent_company_owners_t': 'float', 'naps': 'float', 'se_without_mi_t': 'float', 'total_operating_revenue_ps': 'float', 'operating_revenue_ps': 'float', 'operating_revenue_ps_ttm': 'float', 'oper_profit_ps': 'float', 'capital_surplus_fund_ps': 'float', 'surplus_reserve_fund_ps': 'float', 'undivided_profit': 'float', 'retained_earnings_ps': 'float', 'net_operate_cash_flow_ps': 'float', 'net_operate_cash_flow_ps_ttm': 'float', 'cash_flowps': 'float', 'cash_flowps_ttm': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'basic_eps': '每股收益EPS-基本', 'diluted_eps': '每股收益EPS-稀释', 'np_parent_company_owners_t': '每股收益EPS-期末股本摊薄', 'net_profit_cut_t': '每股收益EPS-扣除/期末股本摊薄', 'new_np_parent_company_owners_t': '每股收益EPS-最新股本摊薄', 'naps': '每股净资产BPS', 'se_without_mi_t': '每股净资产BPS-最新股本摊薄', 'total_operating_revenue_ps': '每股营业总收入', 'operating_revenue_ps': '每股营业收入', 'operating_revenue_ps_ttm': '每股营业收入_TTM', 'oper_profit_ps': '每股营业利润', 'capital_surplus_fund_ps': '每股资本公积金', 'surplus_reserve_fund_ps': '每股盈余公积', 'undivided_profit': '每股未分配利润', 'retained_earnings_ps': '每股留存收益', 'net_operate_cash_flow_ps': '每股经营活动产生的现金流量净额', 'net_operate_cash_flow_ps_ttm': '每股经营活动产生的现金流量净额_TTM', 'cash_flowps': '每股现金流量净额', 'cash_flowps_ttm': '每股现金流量净额_TTM'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_per_share_index", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_issue_count(en_prod_code: str = None, date_range: str = None, date_type: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    统计公司发行信息,包括预案次数,实施次数及金额数量统计等信息，可以同时输入多个股票代码和统计区间。
    https://udata.hs.net/datas/666/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    date_range    String  否      统计区间  统计区间，格式为'YYYY-MM-DD,YYYY-MM-DD'，如'2015-01-01,2015-12-31'，可支持查询多个统计区间
    date_type     String  否      日期类型  {"首次公告":"0","股权登记":"1","增发股份挂牌日":"2"}
    unit          String  否      单位      {"元":"0","十元":"1","百元":"2","千元":"3","万元":"4","十万":"5","百万":"6","千万":"7","亿":"8","十亿":"9"}
    fields        String  否      字段集合
    <返回结果>
    参数名              类型      长度  说明                  备注
    ------------------  ------  ------  --------------------  ------------------------------------------------------------------------------------------
    prod_code           String    20    产品代码              证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    date_range          String    20    统计区间              统计区间，格式为'YYYY-MM-DD,YYYY-MM-DD'，如'2015-01-01,2015-12-31'，可支持查询多个统计区间
    date_type           String    16.4  日期类型              {"首次公告":"0","股权登记":"1","增发股份挂牌日":"2"}
    issued_plan_number  Float     16.4  增发预案次数          增发预案次数
    issued_impl_number  Float     16.4  增发实施次数          增发实施次数
    accu_ipo_proceeds   Float     16.4  增发累计募集资金总额  增发募集金额总计
    acc_issue_vol       Float     16.4  增发股份数量          增发股份数量
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'date_range': 'str', 'date_type': 'str', 'issued_plan_number': 'float', 'issued_impl_number': 'float', 'accu_ipo_proceeds': 'float', 'acc_issue_vol': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'date_range': '统计区间', 'date_type': '日期类型', 'issued_plan_number': '增发预案次数', 'issued_impl_number': '增发实施次数', 'accu_ipo_proceeds': '增发累计募集资金总额', 'acc_issue_vol': '增发股份数量'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_issue_count", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_holder_num(en_prod_code: str = None, report_date: str = None, query_direction: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    统计公司股东户数的基本情况，包括股东户数，户均持股数量，户均持股比例等信息，可以同时输入多个股票代码和报告期。
    https://udata.hs.net/datas/667/
    <参数>
    名称             类型    必填    说明      备注
    ---------------  ------  ------  --------  ---------------------------------------------------------------------------------------------------------------------
    en_prod_code     String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date      String  否      申报日期  报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    query_direction  String  否      查询方向  {"总股本":"0","流通股本":"1"}
    unit             String  否      单位      {"股":"0","十股":"1","百股":"2","千股":"3","万股":"4","十万股":"5","百万股":"6","千万股":"7","亿股":"8","十亿股":"9"}
    fields           String  否      字段集合
    <返回结果>
    参数名                       类型      长度  说明                            备注
    ---------------------------  ------  ------  ------------------------------  -----------------------------------------------------------------------
    prod_code                    String    20    产品代码                        证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    report_date                  String    20    申报日期                        报告期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个报告期。
    query_direction              String    16.4  查询方向                        {"总股本":"0","流通股本":"1"}
    sh_num                       String    16.4  股东总户数                      股东户数
    average_hold_sum             Float     16.4  户均持股数量                    户均持股数量
    average_hold_sum_proportion  Float     16.4  户均持股比例                    户均持股比例
    proportion_change            Float     16.4  相对上一报告期户均持股比例差值  相较上一报告期户均持股比例差
    avg_hold_sum_gr_half_a_year  Float     16.4  户均持股数年增长率              户均持股数半年增长率
    proportion_gr_half_a_year    Float     16.4  户均持股比例年增长率            户均持股数比例半年增长率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'query_direction': 'str', 'sh_num': 'str', 'average_hold_sum': 'float', 'average_hold_sum_proportion': 'float', 'proportion_change': 'float', 'avg_hold_sum_gr_half_a_year': 'float', 'proportion_gr_half_a_year': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'query_direction': '查询方向', 'sh_num': '股东总户数', 'average_hold_sum': '户均持股数量', 'average_hold_sum_proportion': '户均持股比例', 'proportion_change': '相对上一报告期户均持股比例差值', 'avg_hold_sum_gr_half_a_year': '户均持股数年增长率', 'proportion_gr_half_a_year': '户均持股比例年增长率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_holder_num", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def neeq_holder_info(en_prod_code: str = None, end_date: str = None, serial_number: str = None, share_query_type: str = None, unit: str = None, fields: str = None, **kwargs)->Query:
    """
    统计上市公司十大股东持股信息，包括十大股东名称、持股数量、占比、所持股本性质等指标，支持同时输入多个股票代码和截止日期。
    https://udata.hs.net/datas/668/
    <参数>
    名称              类型    必填    说明      备注
    ----------------  ------  ------  --------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    en_prod_code      String  否      证劵代码  证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    end_date          String  否      截止日期  截止日期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个截止日期。
    serial_number     String  否      股东序号  {"第1大股东":"0","第2大股东":"1","第3大股东":"2","第4大股东":"3","第5大股东":"4","第6大股东":"5","第7大股东":"6","第8大股东":"7","第9大股东":"8","第10大股东":"9","前三大流通股东":"11","前五大流通股东":"12","前十大流通股东":"13","第二至第五大股东":"14","第二至第十大股东":"15"}
    share_query_type  String  否      证券类别  {"持股总数":"0","无限售流通股":"1","有限售流通股":"2"}
    unit              String  否      单位      {"股":"0","十股":"1","百股":"2","千股":"3","万股":"4","十万股":"5","百万股":"6","千万股":"7","亿股":"8","十亿股":"9"}
    fields            String  否      字段集合
    <返回结果>
    参数名                          类型      长度  说明                          备注
    ------------------------------  ------  ------  ----------------------------  ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    prod_code                       String    20    产品代码                      证券代码，由交易代码+'.OC'组合而成，如430002.OC，支持输入多个股票代码。
    end_date                        String    20    截止日期                      截止日期，格式为YYYY-MM-DD，如2015-12-31，支持输入多个截止日期。
    serial_number                   String    16.4  股东序号                      {"第1大股东":"0","第2大股东":"1","第3大股东":"2","第4大股东":"3","第5大股东":"4","第6大股东":"5","第7大股东":"6","第8大股东":"7","第9大股东":"8","第10大股东":"9","前三大流通股东":"11","前五大流通股东":"12","前十大流通股东":"13","第二至第五大股东":"14","第二至第十大股东":"15"}
    share_query_type                String    16.4  证券类别                      {"持股总数":"0","无限售流通股":"1","有限售流通股":"2"}
    stock_holder_name               String    20    股东名称                      大股东名称
    hold_vol                        String    16.4  持流通股总数（万股）          大股东持股数量
    pct_of_total_shares             Float     16.4  占总股本比例（%）             大股东持股比例
    share_character_statement       String    20    股本性质                      大股东持股股本性质
    hold_vols_top10_stockholders    Float     16.4  十大股东持股数量              十大股东持股数量
    hold_vols_top10_fstockholders   Float     16.4  前十大流通股股东持股数量合计  十大股东持有流通股数量
    total_prop_top10_fstockholders  Float     16.4  前十大流通股股东持股比例合计  十大股东持有流通股比例
    total_prop_top10_stockholders   Float     16.4  十大股东持股比例              十大股东持股比例
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'end_date': 'str', 'serial_number': 'str', 'share_query_type': 'str', 'stock_holder_name': 'str', 'hold_vol': 'str', 'pct_of_total_shares': 'float', 'share_character_statement': 'str', 'hold_vols_top10_stockholders': 'float', 'hold_vols_top10_fstockholders': 'float', 'total_prop_top10_fstockholders': 'float', 'total_prop_top10_stockholders': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'end_date': '截止日期', 'serial_number': '股东序号', 'share_query_type': '证券类别', 'stock_holder_name': '股东名称', 'hold_vol': '持流通股总数（万股）', 'pct_of_total_shares': '占总股本比例（%）', 'share_character_statement': '股本性质', 'hold_vols_top10_stockholders': '十大股东持股数量', 'hold_vols_top10_fstockholders': '前十大流通股股东持股数量合计', 'total_prop_top10_fstockholders': '前十大流通股股东持股比例合计', 'total_prop_top10_stockholders': '十大股东持股比例'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="neeq", method="neeq_holder_info", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_list(secu_abbr: str = None, symbols: str = None, foundation_type: str = None, float_type: str = None, fields: str = None, **kwargs)->Query:
    """
    提供所有的分级基金，场内和场外基金列表
    https://udata.hs.net/datas/409/
    <参数>
    名称             类型    必填    说明          备注
    ---------------  ------  ------  ------------  ----------------------------------------------
    secu_abbr        String  否      基金简称      支持模糊查询
    symbols          String  否      基金代码
    foundation_type  String  否      基金运作方式  默认取全部类型，枚举值，见表下附注；
    float_type       String  否      发售方式      默认取全部类型 1-场内；2-场外；3-场内和场外
    fields           String  否      输出字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名             类型      长度  说明          备注
    -----------------  ------  ------  ------------  -------------------------------------
    secu_code          String      20  证券代码      基金代码
    foundation_type    String      20  基金运作方式
    secu_abbr          String      20  基金简称
    fund_company_name  String      20  基金公司名称
    float_type         String      20  发售方式      发售方式 1-场内；2-场外；3-场内和场外
    fund_company_code  String      20  基金公司代码
    fund_full_name     String      20  基金全称
    fund_company_abbr  String      20  基金公司简称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'foundation_type': 'str', 'secu_abbr': 'str', 'fund_company_name': 'str', 'float_type': 'str', 'fund_company_code': 'str', 'fund_full_name': 'str', 'fund_company_abbr': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'foundation_type': '基金运作方式', 'secu_abbr': '基金简称', 'fund_company_name': '基金公司名称', 'float_type': '发售方式', 'fund_company_code': '基金公司代码', 'fund_full_name': '基金全称', 'fund_company_abbr': '基金公司简称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_manager_company(en_prod_code: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    提供查询基金的基金经理信息，返回基金经理的名字、任职日、背景等
    https://udata.hs.net/datas/410/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：960041.OF,支持输入多个基金代码
    end_date      String  否      截止日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                      备注
    ------------------------  ------  ------  ------------------------  ------
    prod_code                 String    20    产品代码
    end_date                  String    20    截止日期
    invest_advisor_abbr_name  String    20    基金管理人简称
    establishment_date        String    20    基金管理人成立日期
    regcapital                Float     16.4  基金管理人注册资本(亿元)
    reg_addr                  String    20    基金管理人注册地址
    general_manager           String    20    基金管理人总经理
    legal_repr                String    20    基金管理人法人代表
    contact_name              String    20    基金管理人联系人
    tel                       String    20    基金管理人电话
    fax                       String    20    基金管理人传真
    website                   String    20    基金管理人主页
    email                     String    20    基金管理人邮箱
    contact_address           String    20    基金管理人办公地址
    fund_number               Float     16.4  旗下基金数量
    fund_total_nv             Float     16.4  旗下基金总净值(亿元)
    back_ground               String    20    背景介绍
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'end_date': 'str', 'invest_advisor_abbr_name': 'str', 'establishment_date': 'str', 'regcapital': 'float', 'reg_addr': 'str', 'general_manager': 'str', 'legal_repr': 'str', 'contact_name': 'str', 'tel': 'str', 'fax': 'str', 'website': 'str', 'email': 'str', 'contact_address': 'str', 'fund_number': 'float', 'fund_total_nv': 'float', 'back_ground': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'end_date': '截止日期', 'invest_advisor_abbr_name': '基金管理人简称', 'establishment_date': '基金管理人成立日期', 'regcapital': '基金管理人注册资本(亿元)', 'reg_addr': '基金管理人注册地址', 'general_manager': '基金管理人总经理', 'legal_repr': '基金管理人法人代表', 'contact_name': '基金管理人联系人', 'tel': '基金管理人电话', 'fax': '基金管理人传真', 'website': '基金管理人主页', 'email': '基金管理人邮箱', 'contact_address': '基金管理人办公地址', 'fund_number': '旗下基金数量', 'fund_total_nv': '旗下基金总净值(亿元)', 'back_ground': '背景介绍'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_manager_company", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_manager(en_prod_code: str = None, job_status: str = None, fields: str = None, **kwargs)->Query:
    """
    提供查询基金的基金经理信息，返回基金经理的名字、任职日、背景等
    https://udata.hs.net/datas/411/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      基金代码  默认参数为：960041.OF
    job_status    String  否      任职状态  任职状态 ：1:在职、0:离职
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名            类型      长度  说明              备注
    ----------------  ------  ------  ----------------  ------
    prod_code         String    20    基金代码
    chinese_name      String    20    姓名
    gender            String    20    性别
    nationality       String    20    国籍地区
    birthday          String    20    出生日期
    education         String    20    最高学历
    experience_time   String    20    证券从业经历
    manager_number    Float     16.4  高级管理人员数量
    accession_date    String    20    到任日期
    dimission_date    String    20    离职日期
    management_time   Float     16.4  任职天数
    performance       Float     16.4  任职期基金收益率
    performance_time  String    20    任职年化回报
    personal_code     String    20    所属人员编码
    incumbent         String    20    在任与否
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'chinese_name': 'str', 'gender': 'str', 'nationality': 'str', 'birthday': 'str', 'education': 'str', 'experience_time': 'str', 'manager_number': 'float', 'accession_date': 'str', 'dimission_date': 'str', 'management_time': 'float', 'performance': 'float', 'performance_time': 'str', 'personal_code': 'str', 'incumbent': 'str'}
    column_name_dict = {'prod_code': '基金代码', 'chinese_name': '姓名', 'gender': '性别', 'nationality': '国籍地区', 'birthday': '出生日期', 'education': '最高学历', 'experience_time': '证券从业经历', 'manager_number': '高级管理人员数量', 'accession_date': '到任日期', 'dimission_date': '离职日期', 'management_time': '任职天数', 'performance': '任职期基金收益率', 'performance_time': '任职年化回报', 'personal_code': '所属人员编码', 'incumbent': '在任与否'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_manager", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_profile(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金管理人、托管人、投资目标等基金概况数据；
    https://udata.hs.net/datas/412/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      基金代码  默认参数为：960041.OF
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明                      备注
    -------------------  ------  ------  ------------------------  ------
    prod_code            String    20    基金代码
    chi_name_abbr        String    20    中文名称缩写
    chi_name             String    20    基金全称
    establishment_date   String    20    基金成立日
    invest_advisor_name  String    20    基金管理人
    trustee_name         String    20    基金托管人
    invest_target        String    20    投资目标
    operation            String    20    运作方式
    nv_value             Float     16.4  最新基金净资产值(元)
    publish_date         String    20    最新基金资产净值披露日期
    fund_type_code       String    20    证监会基金分类代码
    fund_type_name       String    20    证监会基金分类
    invest_field         String    20    投资范围
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'chi_name_abbr': 'str', 'chi_name': 'str', 'establishment_date': 'str', 'invest_advisor_name': 'str', 'trustee_name': 'str', 'invest_target': 'str', 'operation': 'str', 'nv_value': 'float', 'publish_date': 'str', 'fund_type_code': 'str', 'fund_type_name': 'str', 'invest_field': 'str'}
    column_name_dict = {'prod_code': '基金代码', 'chi_name_abbr': '中文名称缩写', 'chi_name': '基金全称', 'establishment_date': '基金成立日', 'invest_advisor_name': '基金管理人', 'trustee_name': '基金托管人', 'invest_target': '投资目标', 'operation': '运作方式', 'nv_value': '最新基金净资产值(元)', 'publish_date': '最新基金资产净值披露日期', 'fund_type_code': '证监会基金分类代码', 'fund_type_name': '证监会基金分类', 'invest_field': '投资范围'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_profile", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_institutions(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    收录基金各类相关机构
    https://udata.hs.net/datas/413/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：184688.SZ,支持输入多个基金代码，以半角逗号隔开
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明        备注
    -------------------  ------  ------  ----------  ------
    prod_code            String      20  产品代码
    invest_advisor_name  String      20  基金管理人
    trustee_name         String      20  基金托管人
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'invest_advisor_name': 'str', 'trustee_name': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'invest_advisor_name': '基金管理人', 'trustee_name': '基金托管人'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_institutions", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_etf(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    记录ETF基金基本资料、上市日期、最小申赎份额、申购份额上限等信息
    https://udata.hs.net/datas/414/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：159937.SZ,支持输入多个基金代码，以半角逗号隔开
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                         备注
    --------------------------  ------  ------  ---------------------------  ------
    prod_code                   String    20    产品代码
    trading_date                String    20    交易日期
    etf_listed_date             String    20    ETF上市日期
    primary_market_code         String    20    ETF一级市场基金代码
    target_index_code           String    20    ETF标的指数代码
    least_redemption_unit       Float     16.4  ETF最小申赎份额
    purchase_ul                 Float     16.4  ETF申购份额上限
    redemption_ul               Float     16.4  ETF赎回份额上限
    nav_pershare                Float     16.4  ETF基金份额净值
    cash_forecasted             Float     16.4  ETF申购赎回预估现金部分
    cash_balance                Float     16.4  ETF申购赎回现金差额
    cash_substitute_proportion  Float     16.4  ETF申购赎回现金替代比例上限
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'etf_listed_date': 'str', 'primary_market_code': 'str', 'target_index_code': 'str', 'least_redemption_unit': 'float', 'purchase_ul': 'float', 'redemption_ul': 'float', 'nav_pershare': 'float', 'cash_forecasted': 'float', 'cash_balance': 'float', 'cash_substitute_proportion': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'trading_date': '交易日期', 'etf_listed_date': 'ETF上市日期', 'primary_market_code': 'ETF一级市场基金代码', 'target_index_code': 'ETF标的指数代码', 'least_redemption_unit': 'ETF最小申赎份额', 'purchase_ul': 'ETF申购份额上限', 'redemption_ul': 'ETF赎回份额上限', 'nav_pershare': 'ETF基金份额净值', 'cash_forecasted': 'ETF申购赎回预估现金部分', 'cash_balance': 'ETF申购赎回现金差额', 'cash_substitute_proportion': 'ETF申购赎回现金替代比例上限'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_etf", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_size(en_prod_code: str = None, trading_date: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    记录基金份额和基金净值等统计情况
    https://udata.hs.net/datas/415/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  --------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：000032.OF
    trading_date  String  否      交易日期  默认参数为：系统日期
    report_date   String  否      申报日期  默认参数设置为：2020-12-31，支持同时输入多个报告期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                   类型      长度  说明                  备注
    -----------------------  ------  ------  --------------------  ------
    prod_code                String    20    产品代码
    trading_date             String    20    交易日期
    report_date              String    20    申报日期
    net_value                Float     16.4  净值
    end_shares               Float     16.4  期末份额（份）
    circulation_shares       Float     16.4  流通A股股本
    applying_shares          Float     16.4  报告期申购份额
    redeem_shares            Float     16.4  报告期赎回份额
    shares_change            Float     16.4  报告期申购赎回净额
    rate_of_shares_change    Float     16.4  报告期基金份额变化率
    q_applying_shares        Float     16.4  单季度申购份额
    q_redeem_shares          Float     16.4  单季度赎回份额
    q_shares_change          Float     16.4  单季度申购赎回净额
    q_rate_of_shares_change  Float     16.4  单季度基金份额变化率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'report_date': 'str', 'net_value': 'float', 'end_shares': 'float', 'circulation_shares': 'float', 'applying_shares': 'float', 'redeem_shares': 'float', 'shares_change': 'float', 'rate_of_shares_change': 'float', 'q_applying_shares': 'float', 'q_redeem_shares': 'float', 'q_shares_change': 'float', 'q_rate_of_shares_change': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'trading_date': '交易日期', 'report_date': '申报日期', 'net_value': '净值', 'end_shares': '期末份额（份）', 'circulation_shares': '流通A股股本', 'applying_shares': '报告期申购份额', 'redeem_shares': '报告期赎回份额', 'shares_change': '报告期申购赎回净额', 'rate_of_shares_change': '报告期基金份额变化率', 'q_applying_shares': '单季度申购份额', 'q_redeem_shares': '单季度赎回份额', 'q_shares_change': '单季度申购赎回净额', 'q_rate_of_shares_change': '单季度基金份额变化率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_size", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_charge_rate(en_prod_code: str = None, ofund_charge_type: str = None, fund_invest_type: str = None, fields: str = None, **kwargs)->Query:
    """
    记录基金各种收费比率及标准
    https://udata.hs.net/datas/416/
    <参数>
    名称               类型    必填    说明            备注
    -----------------  ------  ------  --------------  ----------------------------------------------
    en_prod_code       String  否      证劵代码        默认参数为：580001.OF
    ofund_charge_type  String  否      基金收费方式    默认取值1，"前端":"0","后端":"1"
    fund_invest_type   String  否      投资类别(资管)  默认取值1，日常投资:"0","定期定额投资":"1"
    fields             String  否      字段集合        默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                 类型      长度  说明         备注
    ---------------------  ------  ------  -----------  ------
    prod_code              String    20    产品代码
    manage_rate            Float     16.4  管理费率
    trustee_rate           Float     16.4  托管费
    marketing_rate         Float     16.4  营销费率
    subscription_fee_rate  Float     16.4  认购费率
    apply_fee_rate         Float     16.4  申购费率(%)
    redeem_rate            Float     16.4  赎回费率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'manage_rate': 'float', 'trustee_rate': 'float', 'marketing_rate': 'float', 'subscription_fee_rate': 'float', 'apply_fee_rate': 'float', 'redeem_rate': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'manage_rate': '管理费率', 'trustee_rate': '托管费', 'marketing_rate': '营销费率', 'subscription_fee_rate': '认购费率', 'apply_fee_rate': '申购费率(%)', 'redeem_rate': '赎回费率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_charge_rate", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_index(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金上市相关信息，包括基金上市日期、基金上市地点、等资料
    https://udata.hs.net/datas/417/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：184695.SZ，支持输入多个基金代码
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名              类型      长度  说明            备注
    ------------------  ------  ------  --------------  ------
    prod_code           String    20    产品代码
    listed_date         String    20    基金上市日期
    market_place        String    20    上市地点
    outstanding_shares  Float     16.4  可流通基金份额
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'listed_date': 'str', 'market_place': 'str', 'outstanding_shares': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'listed_date': '基金上市日期', 'market_place': '上市地点', 'outstanding_shares': '可流通基金份额'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_index", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_type(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取基金性质、运作方式、投资类型、投资定位等信息
    https://udata.hs.net/datas/418/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：184695.SZ，支持输入多个基金代码，以半角逗号隔开
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明            备注
    -------------------  ------  ------  --------------  ------
    prod_code            String      20  产品代码
    fund_nature          String      20  基金性质
    operation            String      20  运作方式
    investment_type      String      20  投资类型
    investment_location  String      20  投资定位
    data_name_cx         String      20  晨星
    data_name_yh         String      20  银河
    if_initiating_fund   String      20  是否发起式基金
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'fund_nature': 'str', 'operation': 'str', 'investment_type': 'str', 'investment_location': 'str', 'data_name_cx': 'str', 'data_name_yh': 'str', 'if_initiating_fund': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'fund_nature': '基金性质', 'operation': '运作方式', 'investment_type': '投资类型', 'investment_location': '投资定位', 'data_name_cx': '晨星', 'data_name_yh': '银河', 'if_initiating_fund': '是否发起式基金'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_type", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_style(en_prod_code: str = None, parent_node: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    输入基金代码、风格类别代码、截止日期，获取该日期下基金所属的风格
    https://udata.hs.net/datas/425/
    <参数>
    名称          类型    必填    说明          备注
    ------------  ------  ------  ------------  -----------------------------------------------------------------
    en_prod_code  String  否      基金代码      默认参数为：184695.SZ，支持输入多个基金代码，以半角逗号隔开
    parent_node   String  否      风格类别代码  默认取值1013，规模风格:"1013","价值风格":"1014","操作风格":"1015"
    end_date      String  否      截止日期
    fields        String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明      备注
    --------------------  ------  ------  --------  ------
    prod_code             String      20  产品代码
    fund_style_code       String      20  风格代码
    fund_style_name       String      20  风格名称
    fund_style_type_name  String      20  风格类型
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'fund_style_code': 'str', 'fund_style_name': 'str', 'fund_style_type_name': 'str'}
    column_name_dict = {'prod_code': '产品代码', 'fund_style_code': '风格代码', 'fund_style_name': '风格名称', 'fund_style_type_name': '风格类型'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_style", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_holder_public(hold_ratio: str = None, serial_number: str = None, full_name: str = None, secu_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金经理、持有人等信息
    https://udata.hs.net/datas/556/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  -------------------------------------------------
    hold_ratio     String  否      持仓比例  默认值为0，即≥0
    serial_number  String  否      序号      默认值50，即≤50
    full_name      String  否      中文名称  中文名称，与基金代码，必填其一
    secu_code      String  否      证券代码  默认值为960041.OF，基金代码，与中文名称，必填其一
    fields         String  否      字段集合
    <返回结果>
    参数名                类型      长度  说明            备注
    --------------------  ------  ------  --------------  ------
    inner_code            String    20    证券内部代码
    full_name             String    20    中文名称
    secu_code             String    20    证券代码
    secu_category         String    20    证券类别
    invest_advisor_name   String    20    基金管理人名称
    legal_repr            String    20    法人代表
    manager               String    20    基金经理
    serial_number         String    20    股东序号
    holder_name           String    20    持有人名称
    hold_amount           Float     16.4  持有数量
    hold_ratio            Float     16.4  持有比例
    code_holder_category  Float     16.4  持有人类别
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'inner_code': 'str', 'full_name': 'str', 'secu_code': 'str', 'secu_category': 'str', 'invest_advisor_name': 'str', 'legal_repr': 'str', 'manager': 'str', 'serial_number': 'str', 'holder_name': 'str', 'hold_amount': 'float', 'hold_ratio': 'float', 'code_holder_category': 'float'}
    column_name_dict = {'inner_code': '证券内部代码', 'full_name': '中文名称', 'secu_code': '证券代码', 'secu_category': '证券类别', 'invest_advisor_name': '基金管理人名称', 'legal_repr': '法人代表', 'manager': '基金经理', 'serial_number': '股东序号', 'holder_name': '持有人名称', 'hold_amount': '持有数量', 'hold_ratio': '持有比例', 'code_holder_category': '持有人类别'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_data", method="fund_holder_public", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_quote_daily_history(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    基金的历史日行情，及行情表现数据
    https://udata.hs.net/datas/426/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：150022.SZ
    trading_date  String  否      交易日期  默认参数为：2021-05-12
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名            类型      长度  说明      备注
    ----------------  ------  ------  --------  ------
    prod_code         String    20    产品代码
    trading_date      String    20    交易日期
    prev_close_price  Float     16.4  昨收盘价
    open_price        Float     16.4  开盘价
    high_price        Float     16.4  最高价
    low_price         Float     16.4  最低价
    avg_price         Float     16.4  变动均价
    close_price       Float     16.4  收盘价
    px_change         Float     16.4  价格涨跌
    px_change_rate    Float     16.4  涨跌幅
    business_amount   Float     16.4  成交数量
    business_balance  Float     16.4  成交额
    amplitude         Float     16.4  振幅
    discount          Float     16.4  贴水
    discount_ratio    Float     16.4  贴水率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'prev_close_price': 'float', 'open_price': 'float', 'high_price': 'float', 'low_price': 'float', 'avg_price': 'float', 'close_price': 'float', 'px_change': 'float', 'px_change_rate': 'float', 'business_amount': 'float', 'business_balance': 'float', 'amplitude': 'float', 'discount': 'float', 'discount_ratio': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'trading_date': '交易日期', 'prev_close_price': '昨收盘价', 'open_price': '开盘价', 'high_price': '最高价', 'low_price': '最低价', 'avg_price': '变动均价', 'close_price': '收盘价', 'px_change': '价格涨跌', 'px_change_rate': '涨跌幅', 'business_amount': '成交数量', 'business_balance': '成交额', 'amplitude': '振幅', 'discount': '贴水', 'discount_ratio': '贴水率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_quote_daily_history", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_quote_daily(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金的最新日行情，及行情表现数据
    https://udata.hs.net/datas/427/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：150022.SZ
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名            类型      长度  说明      备注
    ----------------  ------  ------  --------  ------
    prod_code         String    20    产品代码
    prev_close_price  Float     16.4  昨收盘价
    open_price        Float     16.4  开盘价
    high_price        Float     16.4  最高价
    low_price         Float     16.4  最低价
    close_price       Float     16.4  收盘价
    avg_price         Float     16.4  变动均价
    px_change         Float     16.4  价格涨跌
    px_change_rate    Float     16.4  涨跌幅
    turnover_ratio    Float     16.4  换手率
    business_amount   Float     16.4  成交数量
    business_balance  Float     16.4  成交额
    amplitude         Float     16.4  振幅
    discount          Float     16.4  贴水
    discount_ratio    Float     16.4  贴水率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'prev_close_price': 'float', 'open_price': 'float', 'high_price': 'float', 'low_price': 'float', 'close_price': 'float', 'avg_price': 'float', 'px_change': 'float', 'px_change_rate': 'float', 'turnover_ratio': 'float', 'business_amount': 'float', 'business_balance': 'float', 'amplitude': 'float', 'discount': 'float', 'discount_ratio': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'prev_close_price': '昨收盘价', 'open_price': '开盘价', 'high_price': '最高价', 'low_price': '最低价', 'close_price': '收盘价', 'avg_price': '变动均价', 'px_change': '价格涨跌', 'px_change_rate': '涨跌幅', 'turnover_ratio': '换手率', 'business_amount': '成交数量', 'business_balance': '成交额', 'amplitude': '振幅', 'discount': '贴水', 'discount_ratio': '贴水率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_quote_daily", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_quote_weekly(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金的最新周行情，及行情表现数据
    https://udata.hs.net/datas/433/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：500039.SH
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                       备注
    -------------------------  ------  ------  -------------------------  ------
    prod_code                  String    20    产品代码
    week_prev_close_price      Float     16.4  周成交均价
    week_open_price            Float     16.4  周开盘价
    week_high_price            Float     16.4  周最低价
    week_low_price             Float     16.4  周收盘价
    week_close_price           Float     16.4  周最高收盘价
    week_max_close_price       Float     16.4  周最低收盘价
    week_min_close_price       Float     16.4  周前收盘价
    week_avg_price             Float     16.4  周最高价
    week_px_change             Float     16.4  周涨跌
    week_px_change_rate        Float     16.4  周涨跌幅
    week_turnover_ratio        Float     16.4  周换手率
    week_avg_turnover_rate     Float     16.4  周日均换手率
    week_amplitude             Float     16.4  周振幅
    week_business_amount       Float     16.4  周成交量
    week_business_balance      Float     16.4  周成交额
    week_discount              Float     16.4  周日均贴水
    week_discount_ratio        Float     16.4  周日均贴水率
    week_high_price_date       String    20    周最高价日
    week_low_price_date        String    20    周最低价日
    week_max_close_price_date  String    20    周最高收盘价日
    week_min_close_price_date  String    20    周最低收盘价日
    week_change_pct_index      Float     16.4  周行情相对沪深300指数表现
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'week_prev_close_price': 'float', 'week_open_price': 'float', 'week_high_price': 'float', 'week_low_price': 'float', 'week_close_price': 'float', 'week_max_close_price': 'float', 'week_min_close_price': 'float', 'week_avg_price': 'float', 'week_px_change': 'float', 'week_px_change_rate': 'float', 'week_turnover_ratio': 'float', 'week_avg_turnover_rate': 'float', 'week_amplitude': 'float', 'week_business_amount': 'float', 'week_business_balance': 'float', 'week_discount': 'float', 'week_discount_ratio': 'float', 'week_high_price_date': 'str', 'week_low_price_date': 'str', 'week_max_close_price_date': 'str', 'week_min_close_price_date': 'str', 'week_change_pct_index': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'week_prev_close_price': '周成交均价', 'week_open_price': '周开盘价', 'week_high_price': '周最低价', 'week_low_price': '周收盘价', 'week_close_price': '周最高收盘价', 'week_max_close_price': '周最低收盘价', 'week_min_close_price': '周前收盘价', 'week_avg_price': '周最高价', 'week_px_change': '周涨跌', 'week_px_change_rate': '周涨跌幅', 'week_turnover_ratio': '周换手率', 'week_avg_turnover_rate': '周日均换手率', 'week_amplitude': '周振幅', 'week_business_amount': '周成交量', 'week_business_balance': '周成交额', 'week_discount': '周日均贴水', 'week_discount_ratio': '周日均贴水率', 'week_high_price_date': '周最高价日', 'week_low_price_date': '周最低价日', 'week_max_close_price_date': '周最高收盘价日', 'week_min_close_price_date': '周最低收盘价日', 'week_change_pct_index': '周行情相对沪深300指数表现'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_quote_weekly", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_quote_monthly(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金的最新月行情，及行情表现数据
    https://udata.hs.net/datas/428/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：500039.SH
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                       备注
    --------------------------  ------  ------  -------------------------  ------
    prod_code                   String    20    产品代码
    month_prev_close_price      Float     16.4  月前收盘价
    month_open_price            Float     16.4  月开盘价
    month_high_price            Float     16.4  月最高价
    month_low_price             Float     16.4  月最低价
    month_close_price           Float     16.4  月收盘价
    month_max_close_price       Float     16.4  月最高收盘价
    month_min_close_price       Float     16.4  月最低收盘价
    month_avg_price             Float     16.4  月成交均价
    month_px_change             Float     16.4  月涨跌
    month_px_change_rate        Float     16.4  月涨跌幅
    month_turnover_ratio        Float     16.4  月换手率
    month_avg_turnover_rate     Float     16.4  月日均换手率
    month_amplitude             Float     16.4  月振幅
    month_business_amount       Float     16.4  月成交量
    month_business_balance      Float     16.4  月成交额
    month_discount              Float     16.4  月日均贴水
    month_discount_ratio        Float     16.4  月日均贴水率
    month_high_price_date       String    20    月最高价日
    month_low_price_date        String    20    月最低价日
    month_max_close_price_date  String    20    月最高收盘价日
    month_min_close_price_date  String    20    月最低收盘价日
    month_change_pct_index      Float     16.4  月行情相对沪深300指数表现
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'month_prev_close_price': 'float', 'month_open_price': 'float', 'month_high_price': 'float', 'month_low_price': 'float', 'month_close_price': 'float', 'month_max_close_price': 'float', 'month_min_close_price': 'float', 'month_avg_price': 'float', 'month_px_change': 'float', 'month_px_change_rate': 'float', 'month_turnover_ratio': 'float', 'month_avg_turnover_rate': 'float', 'month_amplitude': 'float', 'month_business_amount': 'float', 'month_business_balance': 'float', 'month_discount': 'float', 'month_discount_ratio': 'float', 'month_high_price_date': 'str', 'month_low_price_date': 'str', 'month_max_close_price_date': 'str', 'month_min_close_price_date': 'str', 'month_change_pct_index': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'month_prev_close_price': '月前收盘价', 'month_open_price': '月开盘价', 'month_high_price': '月最高价', 'month_low_price': '月最低价', 'month_close_price': '月收盘价', 'month_max_close_price': '月最高收盘价', 'month_min_close_price': '月最低收盘价', 'month_avg_price': '月成交均价', 'month_px_change': '月涨跌', 'month_px_change_rate': '月涨跌幅', 'month_turnover_ratio': '月换手率', 'month_avg_turnover_rate': '月日均换手率', 'month_amplitude': '月振幅', 'month_business_amount': '月成交量', 'month_business_balance': '月成交额', 'month_discount': '月日均贴水', 'month_discount_ratio': '月日均贴水率', 'month_high_price_date': '月最高价日', 'month_low_price_date': '月最低价日', 'month_max_close_price_date': '月最高收盘价日', 'month_min_close_price_date': '月最低收盘价日', 'month_change_pct_index': '月行情相对沪深300指数表现'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_quote_monthly", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_quote_yearly(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    基金的最新年行情，及行情表现数据
    https://udata.hs.net/datas/429/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：500039.SH
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    prod_code                  String      20  证劵代码                   Unnamed: 4
    -------------------------  --------  ----  -------------------------  ------------
    year_prev_close_price      Float     16.4  年前收盘价
    year_open_price            Float     16.4  年开盘价
    year_high_price            Float     16.4  年最高价
    year_low_price             Float     16.4  年最低价
    year_close_price           Float     16.4  年收盘价
    year_max_close_price       Float     16.4  年最高收盘价
    year_min_close_price       Float     16.4  年最低收盘价
    year_avg_price             Float     16.4  年成交均价
    year_px_change             Float     16.4  年涨跌
    year_px_change_rate        Float     16.4  年涨跌幅
    year_turnover_rate         Float     16.4  年换手率
    year_avg_turnover_rate     Float     16.4  年日均换手率
    year_amplitude             Float     16.4  年振幅
    year_business_amount       Float     16.4  年成交量
    year_business_balance      Float     16.4  年成交额
    year_discount              Float     16.4  年日均贴水
    year_discount_ratio        Float     16.4  年日均贴水率
    year_high_price_date       String    20    年最高价日
    year_low_price_date        String    20    年最低价日
    year_max_close_price_date  String    20    年最高收盘价日
    year_min_close_price_date  String    20    年最低收盘价日
    year_change_pct_index      Float     16.4  年行情相对沪深300指数表现
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {}
    column_name_dict = {}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_quote_yearly", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_net_value(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    记录基金每日单位基金净值，基金每周单位基金净值等资料
    https://udata.hs.net/datas/434/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：112002.OF
    trading_date  String  否      交易日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                 类型      长度  说明                        备注
    ---------------------  ------  ------  --------------------------  ------
    prod_code              String    20    产品代码
    trading_date           String    20    交易日期
    unit_nv                Float     16.4  基金单位净值
    nv_daily_growth_rate   Float     16.4  单位净值日增长率（开放式）
    nv_weekly_growth_rate  Float     16.4  单位净值周增长率（封闭式）
    unit_nv_restored       Float     16.4  向后复权单位净值
    nvr_daily_groth_rate   Float     16.4  复权单位净值日增长率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'unit_nv': 'float', 'nv_daily_growth_rate': 'float', 'nv_weekly_growth_rate': 'float', 'unit_nv_restored': 'float', 'nvr_daily_groth_rate': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'trading_date': '交易日期', 'unit_nv': '基金单位净值', 'nv_daily_growth_rate': '单位净值日增长率（开放式）', 'nv_weekly_growth_rate': '单位净值周增长率（封闭式）', 'unit_nv_restored': '向后复权单位净值', 'nvr_daily_groth_rate': '复权单位净值日增长率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_net_value", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def moneyfund_performance(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    记录了货币市场基金收益，包括 每万份基金单位日收益、最近7日折算年收益率等信息
    https://udata.hs.net/datas/435/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：519999.OF
    trading_date  String  否      交易日期  默认参数为：2021-05-10
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                 类型      长度  说明      备注
    ---------------------  ------  ------  --------  ------
    prod_code              String    20    产品代码
    trading_date           String    20    交易日期
    growth_rate_net_value  Float     16.4  万份收益
    latest_weekly_yield    Float     16.4  7日年化
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'growth_rate_net_value': 'float', 'latest_weekly_yield': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'trading_date': '交易日期', 'growth_rate_net_value': '万份收益', 'latest_weekly_yield': '7日年化'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="moneyfund_performance", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_stock_detail(en_prod_code: str = None, report_date: str = None, rank: str = None, fields: str = None, **kwargs)->Query:
    """
    基金年报、半年报公布股票组合明细信息
    https://udata.hs.net/datas/436/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：000001.OF
    report_date   String  否      申报日期  默认参数为：2020-12-31
    rank          String  否      排名      0-第一名,1-第二名,2-第三名,3-第四名,4-第五名,5-第六名,6-第七名7-第八名,8-第九名,9-第十名
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型      长度  说明                        备注
    ----------------------  ------  ------  --------------------------  ------
    prod_code               String    20    产品代码
    report_date             String    20    申报日期
    rank                    Float     16.4  排名
    hold_stock_count        Float     16.4  持股个数
    secu_code               String    20    证券代码
    secu_abbr               String    20    证券简称
    secu_net_asset_ratio    Float     16.4  重仓股市值占基金资产净值比
    stock_a_shares_ratio    Float     16.4  重仓股持仓占流通A股比
    quarter_px_change_rate  Float     16.4  重仓股季度涨跌幅
    hold_fund_count         Float     16.4  持有重仓股的基金个数
    hold_amount             Float     16.4  持有数量
    hold_value              Float     16.4  持流通A股市值
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'rank': 'float', 'hold_stock_count': 'float', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_net_asset_ratio': 'float', 'stock_a_shares_ratio': 'float', 'quarter_px_change_rate': 'float', 'hold_fund_count': 'float', 'hold_amount': 'float', 'hold_value': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'rank': '排名', 'hold_stock_count': '持股个数', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_net_asset_ratio': '重仓股市值占基金资产净值比', 'stock_a_shares_ratio': '重仓股持仓占流通A股比', 'quarter_px_change_rate': '重仓股季度涨跌幅', 'hold_fund_count': '持有重仓股的基金个数', 'hold_amount': '持有数量', 'hold_value': '持流通A股市值'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_stock_detail", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_asset(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    基金资产的大类配置情况，包括股票、债券、银行存款和清算备付金、其他资产、买入返售证券、卖出回购证券、
    https://udata.hs.net/datas/444/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：001712.OF
    report_date   String  否      申报日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                        备注
    -------------------------  ------  ------  --------------------------  ------
    prod_code                  String    20    产品代码
    report_date                String    20    申报日期
    total_asset                Float     16.4  基金资产总值
    net_asset                  Float     16.4  基金资产净值
    stock_value                Float     16.4  股票投资市值
    bond_value                 Float     16.4  债券投资市值
    deposit                    Float     16.4  银行存款
    warrent_value              Float     16.4  权证投资市值
    fund_value                 Float     16.4  基金投资市值
    other_value                Float     16.4  其他资产市值
    stock_net_asset_ratio      Float     16.4  股票市值占基金资产净值比例
    bond_net_asset_ratio       Float     16.4  债券市值占基金资产净值比例
    deposit_net_asset_ratio    Float     16.4  银行存款占基金资产净值比例
    warrent_net_asset_ratio    Float     16.4  权证市值占基金资产净值比例
    fund_net_asset_ratio       Float     16.4  基金市值占基金资产净值比例
    other_net_asset_ratio      Float     16.4  其他资产占基金资产净值比例
    stock_total_asset_ratio    Float     16.4  股票市值占基金资产总值比例
    bond_total_asset_ratio     Float     16.4  债券市值占基金资产总值比例
    deposit_total_asset_ratio  Float     16.4  银行存款占基金资产总值比例
    warrent_total_asset_ratio  Float     16.4  权证市值占基金资产总值比例
    fund_totalt_asset_ratio    Float     16.4  基金市值占基金资产总值比例
    other_total_asset_ratio    Float     16.4  其他资产占基金资产总值比例
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'total_asset': 'float', 'net_asset': 'float', 'stock_value': 'float', 'bond_value': 'float', 'deposit': 'float', 'warrent_value': 'float', 'fund_value': 'float', 'other_value': 'float', 'stock_net_asset_ratio': 'float', 'bond_net_asset_ratio': 'float', 'deposit_net_asset_ratio': 'float', 'warrent_net_asset_ratio': 'float', 'fund_net_asset_ratio': 'float', 'other_net_asset_ratio': 'float', 'stock_total_asset_ratio': 'float', 'bond_total_asset_ratio': 'float', 'deposit_total_asset_ratio': 'float', 'warrent_total_asset_ratio': 'float', 'fund_totalt_asset_ratio': 'float', 'other_total_asset_ratio': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'total_asset': '基金资产总值', 'net_asset': '基金资产净值', 'stock_value': '股票投资市值', 'bond_value': '债券投资市值', 'deposit': '银行存款', 'warrent_value': '权证投资市值', 'fund_value': '基金投资市值', 'other_value': '其他资产市值', 'stock_net_asset_ratio': '股票市值占基金资产净值比例', 'bond_net_asset_ratio': '债券市值占基金资产净值比例', 'deposit_net_asset_ratio': '银行存款占基金资产净值比例', 'warrent_net_asset_ratio': '权证市值占基金资产净值比例', 'fund_net_asset_ratio': '基金市值占基金资产净值比例', 'other_net_asset_ratio': '其他资产占基金资产净值比例', 'stock_total_asset_ratio': '股票市值占基金资产总值比例', 'bond_total_asset_ratio': '债券市值占基金资产总值比例', 'deposit_total_asset_ratio': '银行存款占基金资产总值比例', 'warrent_total_asset_ratio': '权证市值占基金资产总值比例', 'fund_totalt_asset_ratio': '基金市值占基金资产总值比例', 'other_total_asset_ratio': '其他资产占基金资产总值比例'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_asset", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_holder(en_prod_code: str = None, report_date: str = None, fields: str = None, **kwargs)->Query:
    """
    基金披露的基金场内持有人户数、持有人结构信息
    https://udata.hs.net/datas/445/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：240002.OF
    report_date   String  否      申报日期  默认参数为：2020-12-31
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                      备注
    ------------------------  ------  ------  ------------------------  ------
    prod_code                 String    20    产品代码
    report_date               String    20    申报日期
    holder_account_number     Float     16.4  持有人户数
    average_hold_shares       Float     16.4  户均持有份额
    institution_hold_shares   Float     16.4  机构持有份额
    institution_hold_ratio    Float     16.4  机构持有比例
    individual_hold_shares    Float     16.4  个人持有份额
    individual_hold_ratio     Float     16.4  个人持有比例
    top10_holder_amount       Float     16.4  前十大持有人持有份额合计
    top10_holders_proportion  Float     16.4  前十大持有人持有比例合计
    professional_hold_shares  Float     16.4  基金从业人员持有份额
    professional_hold_ratio   Float     16.4  基金从业人员持有比例
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'holder_account_number': 'float', 'average_hold_shares': 'float', 'institution_hold_shares': 'float', 'institution_hold_ratio': 'float', 'individual_hold_shares': 'float', 'individual_hold_ratio': 'float', 'top10_holder_amount': 'float', 'top10_holders_proportion': 'float', 'professional_hold_shares': 'float', 'professional_hold_ratio': 'float'}
    column_name_dict = {'prod_code': '产品代码', 'report_date': '申报日期', 'holder_account_number': '持有人户数', 'average_hold_shares': '户均持有份额', 'institution_hold_shares': '机构持有份额', 'institution_hold_ratio': '机构持有比例', 'individual_hold_shares': '个人持有份额', 'individual_hold_ratio': '个人持有比例', 'top10_holder_amount': '前十大持有人持有份额合计', 'top10_holders_proportion': '前十大持有人持有比例合计', 'professional_hold_shares': '基金从业人员持有份额', 'professional_hold_ratio': '基金从业人员持有比例'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_holder", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_rangerise(en_prod_code: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    该接口根据基金类别 返回基金区间涨跌幅信息
    https://udata.hs.net/datas/446/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      基金代码  默认参数为：240002.OF
    start_date    String  否      开始日期  默认参数为：系统日期-1年
    end_date      String  否      截至日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                                 备注
    -----------------------------  ------  ------  -----------------------------------  ------
    fund_code                      String    20    基金代码
    fund_name                      String    20    基金简称
    trading_day                    String    20    交易日
    a_unit_nv                      Float     16.4  单位累计净值
    daily_yield_rate               Float     16.4  日涨跌幅(%)
    fund_range_yield_rate          Float     16.4  区间基金收益率
    index_range_yield_rate         Float     16.4  区间基准收益率
    daily_profit                   Float     16.4  单位净值/每万份基金单位当日收益(元)
    latest_weekly_yield            Float     16.4  最近7日折算年收益率(%)
    same_fund_range_yield_rate     Float     16.4  同类基金收益率
    same_fund_daily_profit         Float     16.4  同类基金每万份基金单位当日收益(元)
    same_fund_latest_weekly_yield  Float     16.4  同类基金最近7日折算年收益率(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'fund_code': 'str', 'fund_name': 'str', 'trading_day': 'str', 'a_unit_nv': 'float', 'daily_yield_rate': 'float', 'fund_range_yield_rate': 'float', 'index_range_yield_rate': 'float', 'daily_profit': 'float', 'latest_weekly_yield': 'float', 'same_fund_range_yield_rate': 'float', 'same_fund_daily_profit': 'float', 'same_fund_latest_weekly_yield': 'float'}
    column_name_dict = {'fund_code': '基金代码', 'fund_name': '基金简称', 'trading_day': '交易日', 'a_unit_nv': '单位累计净值', 'daily_yield_rate': '日涨跌幅(%)', 'fund_range_yield_rate': '区间基金收益率', 'index_range_yield_rate': '区间基准收益率', 'daily_profit': '单位净值/每万份基金单位当日收益(元)', 'latest_weekly_yield': '最近7日折算年收益率(%)', 'same_fund_range_yield_rate': '同类基金收益率', 'same_fund_daily_profit': '同类基金每万份基金单位当日收益(元)', 'same_fund_latest_weekly_yield': '同类基金最近7日折算年收益率(%)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_rangerise", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_rank(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    该接口提供基金同类排名信息
    https://udata.hs.net/datas/447/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      基金代码  默认参数为：240002.OF
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                备注
    ------------------------  ------  ------  ------------------  ------
    date_type_name            String    20    日期类型名称
    pct_change                Float     16.4  基金涨跌幅
    same_kind_avg_pct_change  Float     16.4  同类基金平均涨跌幅
    rank                      Float     16.4  同类基金排名
    same_kind_count           Float     16.4  同类基金个数
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date_type_name': 'str', 'pct_change': 'float', 'same_kind_avg_pct_change': 'float', 'rank': 'float', 'same_kind_count': 'float'}
    column_name_dict = {'date_type_name': '日期类型名称', 'pct_change': '基金涨跌幅', 'same_kind_avg_pct_change': '同类基金平均涨跌幅', 'rank': '同类基金排名', 'same_kind_count': '同类基金个数'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_rank", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_style_code(parent_node: str = None, key_words: str = None, fields: str = None, **kwargs)->Query:
    """
    通过输入风格类别代码或风格名称关键字匹配获取风格代码。
    https://udata.hs.net/datas/669/
    <参数>
    名称         类型    必填    说明          备注
    -----------  ------  ------  ------------  -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    parent_node  String  否      风格类别代码  {"主题":"1010","申万一级行业":"1011","中信一级行业":"1012","规模风格":"1013","价值风格":"1014","操作风格":"1015","基金公司偏股型":"1016","基金经理偏股型":"1017","券种配置":"1110","久期分布":"1111","基金公司偏债型":"1112","基金经理偏债型":"1113","运作特征":"1310"}
    key_words    String  否      关键字        非必填，同时输入时取风格类别代码与关键字的交集。
    fields       String  否      字段集合
    <返回结果>
    参数名           类型      长度  说明          备注
    ---------------  ------  ------  ------------  -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    parent_node      String      20  风格类别代码  {"主题":"1010","申万一级行业":"1011","中信一级行业":"1012","规模风格":"1013","价值风格":"1014","操作风格":"1015","基金公司偏股型":"1016","基金经理偏股型":"1017","券种配置":"1110","久期分布":"1111","基金公司偏债型":"1112","基金经理偏债型":"1113","运作特征":"1310"}
    fund_style_code  String      20  风格代码      风格代码
    fund_style_name  String      20  风格名称      风格名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'parent_node': 'str', 'fund_style_code': 'str', 'fund_style_name': 'str'}
    column_name_dict = {'parent_node': '风格类别代码', 'fund_style_code': '风格代码', 'fund_style_name': '风格名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_style_code", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_style_info(fund_style_code: str = None, fields: str = None, **kwargs)->Query:
    """
    输入风格代码获取风格的基本信息，包括风格名称、规则说明、划分依据。
    https://udata.hs.net/datas/670/
    <参数>
    名称             类型    必填    说明      备注
    ---------------  ------  ------  --------  ----------------------------------------------------------------
    fund_style_code  String  否      风格代码  风格代码可从“风格代码”API中获取；支持输入多个代码，用逗号“,”隔开
    fields           String  否      字段集合
    <返回结果>
    参数名            类型      长度  说明      备注
    ----------------  ------  ------  --------  ----------------------------------------------------------------
    fund_style_code   String      20  风格代码  风格代码可从“风格代码”API中获取；支持输入多个代码，用逗号“,”隔开
    fund_style_name   String      20  风格名称  风格名称
    rule_explanation  String      20  规则说明  规则说明
    rule_basis        String      20  划分依据  划分依据
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'fund_style_code': 'str', 'fund_style_name': 'str', 'rule_explanation': 'str', 'rule_basis': 'str'}
    column_name_dict = {'fund_style_code': '风格代码', 'fund_style_name': '风格名称', 'rule_explanation': '规则说明', 'rule_basis': '划分依据'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_style_info", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_index_quote(fund_style_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    输入风格指数代码、交易日期，获取指定日期下风格指数的行情信息。
    https://udata.hs.net/datas/671/
    <参数>
    名称             类型    必填    说明          备注
    ---------------  ------  ------  ------------  ------------------------------------------------------------------------------------
    fund_style_code  String  否      风格指数代码  风格指数代码与风格代码相同，可通过“风格代码”API获取；支持输入多个代码，用逗号“,”隔开
    trading_date     String  否      交易日期      输入格式为“YYYY-MM-DD”，如"2017-01-05"
    fields           String  否      字段集合
    <返回结果>
    参数名           类型      长度  说明          备注
    ---------------  ------  ------  ------------  ------------------------------------------------------------------------------------
    fund_style_code  String    20    风格指数代码  风格指数代码与风格代码相同，可通过“风格代码”API获取；支持输入多个代码，用逗号“,”隔开
    trading_date     String    20    交易日期      输入格式为“YYYY-MM-DD”，如"2017-01-05"
    close_price      Float     16.4  收盘价(点)    收盘价(点)
    change_of        Float     16.4  日涨跌        日涨跌
    change_pct       Float     16.4  日涨跌幅(%)   日涨跌幅(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'fund_style_code': 'str', 'trading_date': 'str', 'close_price': 'float', 'change_of': 'float', 'change_pct': 'float'}
    column_name_dict = {'fund_style_code': '风格指数代码', 'trading_date': '交易日期', 'close_price': '收盘价(点)', 'change_of': '日涨跌', 'change_pct': '日涨跌幅(%)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_index_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_style_comp(fund_style_code: str = None, end_date: str = None, **kwargs)->Query:
    """
    输入风格代码与日期，获取指定时间点该风格下的成分基金。
    https://udata.hs.net/datas/672/
    <参数>
    名称             类型    必填    说明      备注
    ---------------  ------  ------  --------  ------------------------------------------------
    fund_style_code  String  否      风格代码  风格代码可从“风格代码”API中获取
    end_date         String  否      截止日期  截止日期，格式为YYYY-MM-DD，如为空默认当前日期。
    <返回结果>
    参数名           类型      长度  说明      备注
    ---------------  ------  ------  --------  ------------------------------------------------
    fund_style_name  String      20  风格名称  风格代码可从“风格代码”API中获取
    prod_code        String      20  产品代码  截止日期，格式为YYYY-MM-DD，如为空默认当前日期。
    secu_abbr        String      20  证券简称  风格成分基金
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'fund_style_name': 'str', 'prod_code': 'str', 'secu_abbr': 'str'}
    column_name_dict = {'fund_style_name': '风格名称', 'prod_code': '产品代码', 'secu_abbr': '证券简称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_style_comp", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fund_index_gr(fund_style_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取指定日期下风格指数的收益率信息。
    https://udata.hs.net/datas/673/
    <参数>
    名称             类型    必填    说明          备注
    ---------------  ------  ------  ------------  ------------------------------------------------------------------------------------
    fund_style_code  String  否      风格指数代码  风格指数代码与风格代码相同，可通过“风格代码”API获取；支持输入多个代码，用逗号“,”隔开
    trading_date     String  否      交易日期      输入格式为“YYYY-MM-DD”，如“2017-01-05”
    fields           String  否      字段集合
    <返回结果>
    参数名             类型      长度  说明                备注
    -----------------  ------  ------  ------------------  ------------------------------------------------------------------------------------
    fund_style_code    String    20    风格指数代码        风格指数代码与风格代码相同，可通过“风格代码”API获取；支持输入多个代码，用逗号“,”隔开
    trading_date       String    20    交易日期            输入格式为“YYYY-MM-DD”，如“2017-01-05”
    daily_gr           Float     16.4  日收益率            日收益率
    gr_for_this_week   Float     16.4  本周以来收益率      本周以来收益率
    weekly_gr          Float     16.4  一周收益率          一周收益率
    gr_for_this_month  Float     16.4  本月以来收益率      本月以来收益率
    monthly_gr         Float     16.4  一个月收益率        一个月收益率
    gr_for_3month      Float     16.4  三个月收益率        三个月收益率
    gr_for_6month      Float     16.4  六个月收益率        六个月收益率
    gr_for_9month      Float     16.4  九个月收益率        九个月收益率
    gr_for_this_year   Float     16.4  今年以来收益率      今年以来收益率
    gr_for_1year       Float     16.4  一年收益率          一年收益率
    gr_for_since       Float     16.4  自设立以来的收益率  自设立以来的收益率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'fund_style_code': 'str', 'trading_date': 'str', 'daily_gr': 'float', 'gr_for_this_week': 'float', 'weekly_gr': 'float', 'gr_for_this_month': 'float', 'monthly_gr': 'float', 'gr_for_3month': 'float', 'gr_for_6month': 'float', 'gr_for_9month': 'float', 'gr_for_this_year': 'float', 'gr_for_1year': 'float', 'gr_for_since': 'float'}
    column_name_dict = {'fund_style_code': '风格指数代码', 'trading_date': '交易日期', 'daily_gr': '日收益率', 'gr_for_this_week': '本周以来收益率', 'weekly_gr': '一周收益率', 'gr_for_this_month': '本月以来收益率', 'monthly_gr': '一个月收益率', 'gr_for_3month': '三个月收益率', 'gr_for_6month': '六个月收益率', 'gr_for_9month': '九个月收益率', 'gr_for_this_year': '今年以来收益率', 'gr_for_1year': '一年收益率', 'gr_for_since': '自设立以来的收益率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="fund_basic_condition", method="fund_index_gr", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fut_basic(option_codes: str = None, contract_code: str = None, options_type: str = None, options_state: str = None, real_state: str = None, futu_opertype: str = None, exchange_type: str = None, warrant_way: str = None, opt_type: str = None, fields: str = None, **kwargs)->Query:
    """
    获取期权品种名称、生效日期、履约方式、交割方式、申报单位等相关信息
    https://udata.hs.net/datas/456/
    <参数>
    名称           类型    必填    说明          备注
    -------------  ------  ------  ------------  ----------------------------------------------
    option_codes   String  否      合约交易代码
    contract_code  String  否      合约代码      默认取值为：81201723
    options_type   String  否      期权类型      默认全部，2-看涨 3-看跌
    options_state  String  否      合约状态      默认全部，1-交易 11-停牌 12-摘牌
    real_state     String  否      真实状态      默认全部，1-真实合约 3-模拟合约
    futu_opertype  String  否      操作类型      默认全部，1-实物交割 2-现金交割
    exchange_type  String  否      交易类别      默认全部
    warrant_way    String  否      行权方式      默认全部，10-欧式，20-美式，30-百慕大式
    opt_type       String  否      期权类型      默认全部
    fields         String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明                  备注
    --------------------  ------  ------  --------------------  -----------------------
    options_type          String      20  期权类型              2-看涨 3-看跌【
    options_abbr          String      20  合约简称
    trading_time_desc     String      20  交易时间描述
    littlest_changeunit   String      20  最小变动价位          单位：元
    lasttrading_date      String      20  最后交易日期
    expiration_date       String      20  到期日期
    contract_month        String      20  合约月份
    secu_code             String      20  合约标的物
    secu_attr             String      20  标的名称
    option_code           String      20  合约交易代码
    contract_multiplier   String      20  交易单位/合约乘数
    exchange_type         String      20  交易类别
    exercise_price        String      20  行权价格              单位：元
    warrant_way           String      20  行权方式
    price_change_ratio    String      20  涨跌停板幅度          单位：%
    options_state         String      20  合约状态              10-交易 11-停牌 12-摘牌
    real_state            String      20  真实状态              1-真实合约 3-模拟合约
    futu_opertype         String      20  操作类型              1-实物交割 2-现金交割
    delivery_date         String      20  交割日期
    listing_date          String      20  合约挂牌日期
    listing_price         String      20  开盘参考价
    listing_day_pre_fall  String      20  挂牌日跌停价
    listing_day_pre_rise  String      20  挂牌日涨停价
    price_unit            String      20  价格单位              单位:张
    contract_code         String      20  合同代码
    opt_type              String      20  期权类型
    exercise_date         String      20  行权日期
    delisting_date        String      20  合约摘牌日期
    margin_ratio1         String      20  保证金计算比例参数一
    margin_ratio2         String      20  保证金计算比例参数二
    lmt_ord_min           String      20  单笔限价申报下限
    lmt_ord_max           String      20  单笔限价申报上限
    mkt_ord_min           String      20  单笔市价申报下限
    mkt_ord_max           String      20  单笔市价申报上限
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'options_type': 'str', 'options_abbr': 'str', 'trading_time_desc': 'str', 'littlest_changeunit': 'str', 'lasttrading_date': 'str', 'expiration_date': 'str', 'contract_month': 'str', 'secu_code': 'str', 'secu_attr': 'str', 'option_code': 'str', 'contract_multiplier': 'str', 'exchange_type': 'str', 'exercise_price': 'str', 'warrant_way': 'str', 'price_change_ratio': 'str', 'options_state': 'str', 'real_state': 'str', 'futu_opertype': 'str', 'delivery_date': 'str', 'listing_date': 'str', 'listing_price': 'str', 'listing_day_pre_fall': 'str', 'listing_day_pre_rise': 'str', 'price_unit': 'str', 'contract_code': 'str', 'opt_type': 'str', 'exercise_date': 'str', 'delisting_date': 'str', 'margin_ratio1': 'str', 'margin_ratio2': 'str', 'lmt_ord_min': 'str', 'lmt_ord_max': 'str', 'mkt_ord_min': 'str', 'mkt_ord_max': 'str'}
    column_name_dict = {'options_type': '期权类型', 'options_abbr': '合约简称', 'trading_time_desc': '交易时间描述', 'littlest_changeunit': '最小变动价位', 'lasttrading_date': '最后交易日期', 'expiration_date': '到期日期', 'contract_month': '合约月份', 'secu_code': '合约标的物', 'secu_attr': '标的名称', 'option_code': '合约交易代码', 'contract_multiplier': '交易单位/合约乘数', 'exchange_type': '交易类别', 'exercise_price': '行权价格', 'warrant_way': '行权方式', 'price_change_ratio': '涨跌停板幅度', 'options_state': '合约状态', 'real_state': '真实状态', 'futu_opertype': '操作类型', 'delivery_date': '交割日期', 'listing_date': '合约挂牌日期', 'listing_price': '开盘参考价', 'listing_day_pre_fall': '挂牌日跌停价', 'listing_day_pre_rise': '挂牌日涨停价', 'price_unit': '价格单位', 'contract_code': '合同代码', 'opt_type': '期权类型', 'exercise_date': '行权日期', 'delisting_date': '合约摘牌日期', 'margin_ratio1': '保证金计算比例参数一', 'margin_ratio2': '保证金计算比例参数二', 'lmt_ord_min': '单笔限价申报下限', 'lmt_ord_max': '单笔限价申报上限', 'mkt_ord_min': '单笔市价申报下限', 'mkt_ord_max': '单笔市价申报上限'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="futures_options", method="fut_basic", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fut_quote_minute(en_prod_code: str = None, begin_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    
    https://udata.hs.net/datas/457/
    <参数>
    名称          类型    必填    说明          备注
    ------------  ------  ------  ------------  ----------------------------------------------
    en_prod_code  String  否      合约交易代码  默认参数为：SC2009.INE
    begin_date    String  否      起始日期      默认参数为：2021-05-15
    end_date      String  否      结束日期      默认参数为：2021-05-20
    fields        String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名           类型      长度  说明              备注
    ---------------  ------  ------  ----------------  ------
    date             String      20  日期（交易日）
    time             String      20  时间（小时分钟）
    open             String      20  开盘价(元)
    high             String      20  最高价(元)
    low              String      20  最低价(元)
    close            String      20  收盘价(元)
    turnover_volume  String      20  成交量(股)
    turnover_value   String      20  成交额(元)
    change           String      20  涨跌幅(元)
    change_pct       String      20  涨跌幅(%)
    amount           String      20  持仓量(张/手)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'time': 'str', 'open': 'str', 'high': 'str', 'low': 'str', 'close': 'str', 'turnover_volume': 'str', 'turnover_value': 'str', 'change': 'str', 'change_pct': 'str', 'amount': 'str'}
    column_name_dict = {'date': '日期（交易日）', 'time': '时间（小时分钟）', 'open': '开盘价(元)', 'high': '最高价(元)', 'low': '最低价(元)', 'close': '收盘价(元)', 'turnover_volume': '成交量(股)', 'turnover_value': '成交额(元)', 'change': '涨跌幅(元)', 'change_pct': '涨跌幅(%)', 'amount': '持仓量(张/手)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="futures_options", method="fut_quote_minute", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fut_list(fields: str = None, **kwargs)->Query:
    """
    取得上海国际能源交易中心、上海期货交易所、郑州商品交易所、大连商品交易所、中国金融期货交易所，5大期货交易所期货代码列表，用于期货行情查询
    https://udata.hs.net/datas/458/
    <参数>
    名称    类型    必填    说明      备注
    ------  ------  ------  --------  ----------------------------------------------
    fields  String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名     类型      长度  说明      备注
    ---------  ------  ------  --------  ------
    gil_code   String      20  聚源代码
    secu_code  String      20  证券代码
    secu_abbr  String      20  证券简称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'gil_code': 'str', 'secu_code': 'str', 'secu_abbr': 'str'}
    column_name_dict = {'gil_code': '聚源代码', 'secu_code': '证券代码', 'secu_abbr': '证券简称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="futures_options", method="fut_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fut_count_rank(contract_code: str = None, date_type: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    期货合约多空占比总量统计排名，按交易日纬度，合约代码contract_code取自接口fut_contract，仅支持沪深300（IF开头）,上证50（IH开头），中证500（IC开头）的合约代码
    https://udata.hs.net/datas/460/
    <参数>
    名称           类型    必填    说明          备注
    -------------  ------  ------  ------------  ------------------
    contract_code  String  否      合同代码      默认参数为：IF1608
    date_type      String  否      日期类型      默认参数为：1
    start_date     String  否      开始日期
    end_date       String  否      截止日期
    fields         String  否      输出字段集合
    <返回结果>
    参数名                  类型      长度  说明          备注
    ----------------------  ------  ------  ------------  ------
    trade_date              String      20  交易日期
    long_positions_amount   String      20  多单量（手）
    short_positions_amount  String      20  空单量（手）
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'trade_date': 'str', 'long_positions_amount': 'str', 'short_positions_amount': 'str'}
    column_name_dict = {'trade_date': '交易日期', 'long_positions_amount': '多单量（手）', 'short_positions_amount': '空单量（手）'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="futures_options", method="fut_count_rank", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fut_holding_lh(contract_code: str = None, indicator_code: str = None, contract_type: str = None, rank_num: str = None, date_type: str = None, start_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    提供正在交易的期货合约龙虎榜详情，统计期货会员排名的持仓信息，包含多空增减值，指标数量，其中合约代码contract_code取自期货合约详情接口fut_contract
    https://udata.hs.net/datas/468/
    <参数>
    名称            类型    必填    说明                          备注
    --------------  ------  ------  ----------------------------  ----------------------------------------------------------------------------------------------------------------------------------------------------------------------
    contract_code   String  否      合约代码                      在fut_contract列表中返回的合约代码字段，如IF1609
    indicator_code  String  否      统计类型                      1-成交量统计，3-持买仓量统计，4-持卖仓量统计若不送默认查询全部
    contract_type   String  否      合同代码类别                  1-商品期货 2-货币期货 3-利率期货 4-股指期货
    rank_num        String  否      自定义活跃营业部关联股票个数  若不送默认为取前10会员排名，自定义可输入任意数字排名
    date_type       String  否      日期类型                      默认值为1,date_type=1表示获取最近一个有数据的交易日， date_type=2表示获取近一个月， date_type=3表示获取近三个月， date_type=4表示获取近半年， date_type=5表示查询近1年
    start_date      String  否      开始日期                      默认参数为：系统日期
    end_date        String  否      截止日期                      默认参数为：系统日期-1
    fields          String  否      输出字段集合
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    contract_code     String    20    合约代码
    trade_date        String    20    交易日期
    contract_type     String    20    合同代码类别
    rank_number       Float     16.4  排名名次
    member_abbr       Float     16.4  会员简称
    indicator_vol     Float     16.4  指标数量
    change_vol        Float     16.4  增减数量
    total_vol         Float     16.4  本日合计
    total_change_vol  Float     16.4  总增减量
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'contract_code': 'str', 'trade_date': 'str', 'contract_type': 'str', 'rank_number': 'float', 'member_abbr': 'float', 'indicator_vol': 'float', 'change_vol': 'float', 'total_vol': 'float', 'total_change_vol': 'float'}
    column_name_dict = {'contract_code': '合约代码', 'trade_date': '交易日期', 'contract_type': '合同代码类别', 'rank_number': '排名名次', 'member_abbr': '会员简称', 'indicator_vol': '指标数量', 'change_vol': '增减数量', 'total_vol': '本日合计', 'total_change_vol': '总增减量'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="futures_options", method="fut_holding_lh", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def fut_contract_type(exchange_code: str = None, fut_option_code: str = None, fields: str = None, **kwargs)->Query:
    """
    收录国内商品期货品种和金融期货品种的标准合约基本要素信息
    https://udata.hs.net/datas/473/
    <参数>
    名称             类型    必填    说明                  备注
    ---------------  ------  ------  --------------------  ---------------------------------------------------------------------------
    exchange_code    String  否      交易所代码            10-上海期货交易所 13-大连商品交易所 15-郑州商品交易所 20-中国金融期货交易所
    fut_option_code  String  否      品种合约标的代码标识
    fields           String  否      输出字段集
    <返回结果>
    参数名               类型      长度  说明                   备注
    -------------------  ------  ------  ---------------------  ----------------------
    changepct_limit      String      20  品种每日涨跌幅度
    contract_month       String      20  品种合约月份
    contract_name        String      20  合约品种全称
    delivery_date        String      20  品种交割日期
    delivery_grades      String      20  品种交割等级
    delivery_method      String      20  品种交割方式           1-实物交割，2-现金结算
    exchange_date        String      20  品种交易日期
    littlest_changeunit  String      20  品种最小变动价位
    price_unit           String      20  品种价格单位
    fut_option_code      String      20  品种合约标的代码标识
    lasttrading_date     String      20  品种最后交易日
    contract_multiplier  String      20  品种交易单位/合约乘数
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'changepct_limit': 'str', 'contract_month': 'str', 'contract_name': 'str', 'delivery_date': 'str', 'delivery_grades': 'str', 'delivery_method': 'str', 'exchange_date': 'str', 'littlest_changeunit': 'str', 'price_unit': 'str', 'fut_option_code': 'str', 'lasttrading_date': 'str', 'contract_multiplier': 'str'}
    column_name_dict = {'changepct_limit': '品种每日涨跌幅度', 'contract_month': '品种合约月份', 'contract_name': '合约品种全称', 'delivery_date': '品种交割日期', 'delivery_grades': '品种交割等级', 'delivery_method': '品种交割方式', 'exchange_date': '品种交易日期', 'littlest_changeunit': '品种最小变动价位', 'price_unit': '品种价格单位', 'fut_option_code': '品种合约标的代码标识', 'lasttrading_date': '品种最后交易日', 'contract_multiplier': '品种交易单位/合约乘数'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="futures_options", method="fut_contract_type", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def con_price(inner_code: str = None, date_type: str = None, begin_date: str = None, end_date: str = None, price_change_type: str = None, secu_code: str = None, secu_market: str = None, fields: str = None, **kwargs)->Query:
    """
    该接口展示了可转债转股价格变动情况，包含价格变动类型、日期、转股价格、比例等情况
    https://udata.hs.net/datas/480/
    <参数>
    名称               类型    必填    说明            备注
    -----------------  ------  ------  --------------  ----------------------------------------------------
    inner_code         String  否      债券ID
    date_type          String  否      日期筛选类型    默认值取1，1-公告日期，2-变动日期
    begin_date         String  否      起始日期        默认参数为：系统日期
    end_date           String  否      筛选日期截止日  默认参数为：系统日期
    price_change_type  String  否      价格变动类型    默认取全部，1-初始转股价，2-调整转股价，3-修正转股价
    secu_code          String  否      证券代码
    secu_market        String  否      证券市场
    fields             String  否      字段集合        默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明          备注
    --------------------  ------  ------  ------------  ----------------------------------------
    inner_code            String      20  债券ID
    price_change_type     String      20  价格变动类型  1-初始转股价，2-调整转股价，3-修正转股价
    info_publ_date        String      20  公告日期
    valid_date            String      20  有效日期
    convert_price         String      20  转股价格(元)
    convert_ratio         String      20  转股比例(%)
    secu_code             String      20  证券代码
    secu_abbr             String      20  证券简称
    secu_market           String      20  证券市场
    target_secu_code      String      20  标的证券代码
    target_secu_abbr      String      20  标的证券简称
    conv_term_start_date  String      20  转股起始日
    conv_term_end_date    String      20  转股截止日
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'inner_code': 'str', 'price_change_type': 'str', 'info_publ_date': 'str', 'valid_date': 'str', 'convert_price': 'str', 'convert_ratio': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'target_secu_code': 'str', 'target_secu_abbr': 'str', 'conv_term_start_date': 'str', 'conv_term_end_date': 'str'}
    column_name_dict = {'inner_code': '债券ID', 'price_change_type': '价格变动类型', 'info_publ_date': '公告日期', 'valid_date': '有效日期', 'convert_price': '转股价格(元)', 'convert_ratio': '转股比例(%)', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'target_secu_code': '标的证券代码', 'target_secu_abbr': '标的证券简称', 'conv_term_start_date': '转股起始日', 'conv_term_end_date': '转股截止日'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="bond_data", method="con_price", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def con_time(inner_code: str = None, company_code: str = None, date_type: str = None, begin_date: str = None, end_date: str = None, interval_type_code: str = None, secu_code: str = None, secu_market: str = None, fields: str = None, **kwargs)->Query:
    """
    该接口展示了可转债转股区间与暂停转股区间，包含对应日期区间、转股价格、比例等情况
    https://udata.hs.net/datas/489/
    <参数>
    名称                类型    必填    说明          备注
    ------------------  ------  ------  ------------  --------------------------------------------
    inner_code          String  否      债券ID
    company_code        String  否      公司ID
    date_type           String  否      日期筛选类型  默认值为1，1-起始日，2-截止日
    begin_date          String  否      起始日期      默认参数为：系统日期
    end_date            String  否      截止日期      默认参数为：系统日期
    interval_type_code  String  否      区间类型代码  默认取全部，1-转股区间，2-暂停转股区间
    secu_code           String  否      证券代码
    secu_market         String  否      证券市场
    fields              String  否      字段集合      默认取全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明          备注
    -------------------  ------  ------  ------------  ------
    inner_code           String      20  债券ID
    target_secu_code     String      20  标的证券代码
    target_secu_abbr     String      20  标的证券简称
    secu_code            String      20  证券代码
    secu_abbr            String      20  证券简称
    secu_market          String      20  证券市场
    interval_type_code   String      20  区间类型代码
    interval_start_date  String      20  区间起始日
    interval_end_date    String      20  区间截止日
    interval_type_name   String      20  区间类型描述
    convert_price        String      20  转股价格(元)
    convert_ratio        String      20  转股比例
    valid_date           String      20  有效日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'inner_code': 'str', 'target_secu_code': 'str', 'target_secu_abbr': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'secu_market': 'str', 'interval_type_code': 'str', 'interval_start_date': 'str', 'interval_end_date': 'str', 'interval_type_name': 'str', 'convert_price': 'str', 'convert_ratio': 'str', 'valid_date': 'str'}
    column_name_dict = {'inner_code': '债券ID', 'target_secu_code': '标的证券代码', 'target_secu_abbr': '标的证券简称', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'secu_market': '证券市场', 'interval_type_code': '区间类型代码', 'interval_start_date': '区间起始日', 'interval_end_date': '区间截止日', 'interval_type_name': '区间类型描述', 'convert_price': '转股价格(元)', 'convert_ratio': '转股比例', 'valid_date': '有效日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="bond_data", method="con_time", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def con_detail(bond_code: str = None, apply_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取可转债详细信息
    https://udata.hs.net/datas/490/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  ----------------------------------------------
    bond_code   String  否      债券代码  不支持多个，只能输入单代码
    apply_code  String  否      申购代码  不支持多个，只能输入单代码
    fields      String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明                备注
    -------------------  ------  ------  ------------------  ------
    bond_code            String      20  债券代码
    bond_abbr            String      20  债券简称
    secu_market          String      20  证券市场
    secu_code            String      20  证券代码
    secu_abbr            String      20  证券简称
    sub_code             String      20  认购代码
    sub_abbr             String      20  认购简称
    apply_code           String      20  申购代码
    apply_abbr           String      20  申购简称
    credit_rate          String      20  信用级别
    cras                 String      20  评级机构
    convterm_start_date  String      20  转股期起始日
    convterm_end_date    String      20  转股期结束日
    actual_issue_size    String      20  发行规模
    issue_price          String      20  发行价格(元)
    maturit_year         String      20  债券期限年
    prefalt_rate         String      20  配售比例（％）
    apply_date           String      20  申请日期
    list_date            String      20  上市日期
    offline_lot_rate     String      20  网下配售中签率
    online_issue_vol     String      20  网上发行数量
    online_apply_cap     String      20  最大申购数
    online_apply_min     String      20  最小申购数（张数）
    interest_item        String      20  票面利率
    sellback_term        String      20  回售条款
    redeem_term          String      20  赎回条款
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'bond_code': 'str', 'bond_abbr': 'str', 'secu_market': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'sub_code': 'str', 'sub_abbr': 'str', 'apply_code': 'str', 'apply_abbr': 'str', 'credit_rate': 'str', 'cras': 'str', 'convterm_start_date': 'str', 'convterm_end_date': 'str', 'actual_issue_size': 'str', 'issue_price': 'str', 'maturit_year': 'str', 'prefalt_rate': 'str', 'apply_date': 'str', 'list_date': 'str', 'offline_lot_rate': 'str', 'online_issue_vol': 'str', 'online_apply_cap': 'str', 'online_apply_min': 'str', 'interest_item': 'str', 'sellback_term': 'str', 'redeem_term': 'str'}
    column_name_dict = {'bond_code': '债券代码', 'bond_abbr': '债券简称', 'secu_market': '证券市场', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'sub_code': '认购代码', 'sub_abbr': '认购简称', 'apply_code': '申购代码', 'apply_abbr': '申购简称', 'credit_rate': '信用级别', 'cras': '评级机构', 'convterm_start_date': '转股期起始日', 'convterm_end_date': '转股期结束日', 'actual_issue_size': '发行规模', 'issue_price': '发行价格(元)', 'maturit_year': '债券期限年', 'prefalt_rate': '配售比例（％）', 'apply_date': '申请日期', 'list_date': '上市日期', 'offline_lot_rate': '网下配售中签率', 'online_issue_vol': '网上发行数量', 'online_apply_cap': '最大申购数', 'online_apply_min': '最小申购数（张数）', 'interest_item': '票面利率', 'sellback_term': '回售条款', 'redeem_term': '赎回条款'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="bond_data", method="con_detail", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def con_calender(start_date: str = None, bond_code: str = None, secu_code: str = None, apply_code: str = None, pref_code: str = None, prompt_type: str = None, fields: str = None, **kwargs)->Query:
    """
    提供申购，待上市，今日可申购，已上市 等状态
    https://udata.hs.net/datas/493/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ----------------------------------------------
    start_date   String  否      开始日期
    bond_code    String  否      债券代码  参默认全部,当prompt_type＝5时，有效
    secu_code    String  否      证券代码  参默认全部,当prompt_type＝5时，有效
    apply_code   String  否      申购代码  参默认全部,当prompt_type＝5时，有效
    pref_code    String  否      配售代码  参默认全部,当prompt_type＝5时，有效
    prompt_type  String  否      状态
    fields       String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                 类型      长度  说明                备注
    ---------------------  ------  ------  ------------------  --------------------
    bond_code              String      20  债券代码
    bond_abbr              String      20  债券简称
    secu_code              String      20  证券代码
    secu_abbr              String      20  证券简称
    issue_vol_planned      String      20  计划发行量
    actual_issue_size      String      20  发行规模
    listed_date            String      20  上市日期
    close_price            String      20  最新价
    new_convet_price       String      20  转股价格
    premium_ratio          String      20  转股溢价率(%)
    a_change               String      20  涨跌幅(%)
    convet_value           String      20  转股价值
    pref_code              String      20  配售代码
    pref_name              String      20  配售名称
    apply_date             String      20  申请日期
    online_issue_vol       String      20  网上发行数量
    online_lot_rate        String      20  网上申购中签率
    online_start_date      String      20  网上发行日
    offline_lot_rate       String      20  网下配售中签率
    apply_code             String      20  申购代码
    apply_name             String      20  申购名称
    issue_price_change     String      20  发行价格
    online_apply_cap       String      20  最大申购数
    online_apply_min       String      20  最小申购数（张数）
    open_price             String      20  开盘价
    unsuccessful_earnings  String      20  中签收益(每签)
    secu_market            String      20  证券市场            83-上交所，90-深交所
    info_publ_date         String      20  公告日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'bond_code': 'str', 'bond_abbr': 'str', 'secu_code': 'str', 'secu_abbr': 'str', 'issue_vol_planned': 'str', 'actual_issue_size': 'str', 'listed_date': 'str', 'close_price': 'str', 'new_convet_price': 'str', 'premium_ratio': 'str', 'a_change': 'str', 'convet_value': 'str', 'pref_code': 'str', 'pref_name': 'str', 'apply_date': 'str', 'online_issue_vol': 'str', 'online_lot_rate': 'str', 'online_start_date': 'str', 'offline_lot_rate': 'str', 'apply_code': 'str', 'apply_name': 'str', 'issue_price_change': 'str', 'online_apply_cap': 'str', 'online_apply_min': 'str', 'open_price': 'str', 'unsuccessful_earnings': 'str', 'secu_market': 'str', 'info_publ_date': 'str'}
    column_name_dict = {'bond_code': '债券代码', 'bond_abbr': '债券简称', 'secu_code': '证券代码', 'secu_abbr': '证券简称', 'issue_vol_planned': '计划发行量', 'actual_issue_size': '发行规模', 'listed_date': '上市日期', 'close_price': '最新价', 'new_convet_price': '转股价格', 'premium_ratio': '转股溢价率(%)', 'a_change': '涨跌幅(%)', 'convet_value': '转股价值', 'pref_code': '配售代码', 'pref_name': '配售名称', 'apply_date': '申请日期', 'online_issue_vol': '网上发行数量', 'online_lot_rate': '网上申购中签率', 'online_start_date': '网上发行日', 'offline_lot_rate': '网下配售中签率', 'apply_code': '申购代码', 'apply_name': '申购名称', 'issue_price_change': '发行价格', 'online_apply_cap': '最大申购数', 'online_apply_min': '最小申购数（张数）', 'open_price': '开盘价', 'unsuccessful_earnings': '中签收益(每签)', 'secu_market': '证券市场', 'info_publ_date': '公告日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="bond_data", method="con_calender", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def con_quote(gil_code: str = None, begin_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    返回可转换债券(含分离交易可转债、可交换公司债)的日行情信息。
    https://udata.hs.net/datas/674/
    <参数>
    名称        类型    必填    说明      备注
    ----------  ------  ------  --------  --------------------------------------------------------------------------------
    gil_code    String  否      证劵代码  默认入参：128019.SZ，输入参数的代码必须以市场后缀结尾，例如 上海：SH,SS 深圳：SZ
    begin_date  String  否      起始日期  默认入参：2021-01-01
    end_date    String  否      截至日期  默认入参：2021-01-05
    <返回结果>
    参数名                 类型      长度  说明                    备注
    ---------------------  ------  ------  ----------------------  ------
    gil_code               String    20    证劵代码
    trading_date           String    20    交易日期
    bond_nature_code       String    20    债券类型代码
    bond_nature_desc       String    20    债券类型描述
    maturity               String    20    债券期限
    prev_close_price       Float     16.4  昨收盘(元)
    open_price             Float     16.4  开盘价
    high_price             Float     16.4  最高价(元)
    low_price              Float     16.4  最低价(元)
    close_price            Float     16.4  收盘价(元)
    change_pct             Float     16.4  涨跌幅(%)
    turnover_rate          Float     16.4  换手率
    turnover_volume        Float     16.4  成交量
    turnover_value         Float     16.4  成交额
    turnover_deals         Float     16.4  成交笔数
    close_dirty_price      Float     16.4  全价收盘价(元)
    stock_close_price      Float     16.4  对应基础股票收盘价(元)
    accrued_days           Float     16.4  计息天数
    accrued_interest       Float     16.4  每百元应计利息(元)
    years_to_maturity      Float     16.4  待偿期
    ytm_cl                 Float     16.4  收盘价到期收益率(%)
    cb_current_yield       Float     16.4  当期收益率(%)
    duration_cl            Float     16.4  收盘价麦氏久期
    modified_duration_cl   Float     16.4  收盘价修正久期
    convexity_cl           Float     16.4  收盘价凸性
    convert_price          Float     16.4  转股价格(元)
    convert_ratio          Float     16.4  转股比例(%)
    cb_convert_value       Float     16.4  转股价值
    convert_premium_value  Float     16.4  转股溢价
    convert_premium_rate   Float     16.4  转股溢价率(%)
    convert_par_price      Float     16.4  转换平价
    cb_strb_value          Float     16.4  纯债价值
    cb_strb_premium        Float     16.4  纯债溢价
    cb_strb_premium_ratio  Float     16.4  纯债溢价率(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'gil_code': 'str', 'trading_date': 'str', 'bond_nature_code': 'str', 'bond_nature_desc': 'str', 'maturity': 'str', 'prev_close_price': 'float', 'open_price': 'float', 'high_price': 'float', 'low_price': 'float', 'close_price': 'float', 'change_pct': 'float', 'turnover_rate': 'float', 'turnover_volume': 'float', 'turnover_value': 'float', 'turnover_deals': 'float', 'close_dirty_price': 'float', 'stock_close_price': 'float', 'accrued_days': 'float', 'accrued_interest': 'float', 'years_to_maturity': 'float', 'ytm_cl': 'float', 'cb_current_yield': 'float', 'duration_cl': 'float', 'modified_duration_cl': 'float', 'convexity_cl': 'float', 'convert_price': 'float', 'convert_ratio': 'float', 'cb_convert_value': 'float', 'convert_premium_value': 'float', 'convert_premium_rate': 'float', 'convert_par_price': 'float', 'cb_strb_value': 'float', 'cb_strb_premium': 'float', 'cb_strb_premium_ratio': 'float'}
    column_name_dict = {'gil_code': '证劵代码', 'trading_date': '交易日期', 'bond_nature_code': '债券类型代码', 'bond_nature_desc': '债券类型描述', 'maturity': '债券期限', 'prev_close_price': '昨收盘(元)', 'open_price': '开盘价', 'high_price': '最高价(元)', 'low_price': '最低价(元)', 'close_price': '收盘价(元)', 'change_pct': '涨跌幅(%)', 'turnover_rate': '换手率', 'turnover_volume': '成交量', 'turnover_value': '成交额', 'turnover_deals': '成交笔数', 'close_dirty_price': '全价收盘价(元)', 'stock_close_price': '对应基础股票收盘价(元)', 'accrued_days': '计息天数', 'accrued_interest': '每百元应计利息(元)', 'years_to_maturity': '待偿期', 'ytm_cl': '收盘价到期收益率(%)', 'cb_current_yield': '当期收益率(%)', 'duration_cl': '收盘价麦氏久期', 'modified_duration_cl': '收盘价修正久期', 'convexity_cl': '收盘价凸性', 'convert_price': '转股价格(元)', 'convert_ratio': '转股比例(%)', 'cb_convert_value': '转股价值', 'convert_premium_value': '转股溢价', 'convert_premium_rate': '转股溢价率(%)', 'convert_par_price': '转换平价', 'cb_strb_value': '纯债价值', 'cb_strb_premium': '纯债溢价', 'cb_strb_premium_ratio': '纯债溢价率(%)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="bond_data", method="con_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_list(fields: str = None, **kwargs)->Query:
    """
    记录港股上市、退市股票交易代码、股票名称等信息，以列表形式展示
    https://udata.hs.net/datas/496/
    <参数>
    名称    类型    必填    说明      备注
    ------  ------  ------  --------  ----------------------------------------------
    fields  String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型      长度  说明      备注
    -------------  ------  ------  --------  ------
    secu_code      String      20  证券代码
    secu_abbr      String      20  证券简称
    chi_name       String      20  中文名称
    secu_market    String      20  证券市场
    listed_sector  String      20  上市板块
    listed_state   String      20  上市状态
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'chi_name': 'str', 'secu_market': 'str', 'listed_sector': 'str', 'listed_state': 'str'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'chi_name': '中文名称', 'secu_market': '证券市场', 'listed_sector': '上市板块', 'listed_state': '上市状态'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_basic_data", method="hk_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_ipo(en_prod_code: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股首发IPO的数据，如首发上市日期、每股发行价、发行量 、新股发行数量、股东售股数量 、募集资金总额 、募集资金净额等
    https://udata.hs.net/datas/497/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                           类型      长度  说明                  备注
    -------------------------------  ------  ------  --------------------  --------
    prod_code                        String    20    证劵代码
    listed_date                      String    20    首发上市日期
    total_shares_on_list_date        Float     16.4  首发后总股本_上市日
    store_share_allotment            Float     16.4  股东售股数量
    total_net_proceeds               Float     16.4  发行费用
    over_allotment_proceeds          Float     16.4  超额配售募资总额
    over_allotment_net_proceeds      Float     16.4  超额配售募资净额
    issue_vol_planned                Float     16.4  计划发行量
    proceeds_planned                 Float     16.4  计划募集资金总额
    net_proceeds_planned             Float     16.4  计划募集资金净额
    issue_cost_planned               Float     16.4  计划发行费用
    pub_apply_multiple               Float     16.4  首发公众认购倍数
    allotment_apply_multiple         Float     16.4  首发配售申请倍数
    issue_pe_diluted                 Float     16.4  首发市盈率（摊薄）
    issue_price_floor                Float     16.4  发行价格下限
    issue_price_ceiling              Float     16.4  发行价格上限
    first_underwriter_allotment      Float     16.4  最大承配人配售股数
    first_5_underwriters_allotment   Float     16.4  前5大承配人配售股数
    first_10_underwriters_allotment  Float     16.4  前10大承配人配售股数
    currency_unit                    Float     16.4  面值单位              货币单位
    issue_vol                        Float     16.4  发行量
    new_share_vol                    Float     16.4  新股发行数量
    total_proceeds                   Float     16.4  募集资金总额
    net_proceeds                     Float     16.4  募集资金净额
    issue_method                     String    20    发行方式
    issue_price_change               Float     16.4  每股发行价
    issue_object                     String    20    发行对象
    par_value                        Float     16.4  面值
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'listed_date': 'str', 'total_shares_on_list_date': 'float', 'store_share_allotment': 'float', 'total_net_proceeds': 'float', 'over_allotment_proceeds': 'float', 'over_allotment_net_proceeds': 'float', 'issue_vol_planned': 'float', 'proceeds_planned': 'float', 'net_proceeds_planned': 'float', 'issue_cost_planned': 'float', 'pub_apply_multiple': 'float', 'allotment_apply_multiple': 'float', 'issue_pe_diluted': 'float', 'issue_price_floor': 'float', 'issue_price_ceiling': 'float', 'first_underwriter_allotment': 'float', 'first_5_underwriters_allotment': 'float', 'first_10_underwriters_allotment': 'float', 'currency_unit': 'float', 'issue_vol': 'float', 'new_share_vol': 'float', 'total_proceeds': 'float', 'net_proceeds': 'float', 'issue_method': 'str', 'issue_price_change': 'float', 'issue_object': 'str', 'par_value': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'listed_date': '首发上市日期', 'total_shares_on_list_date': '首发后总股本_上市日', 'store_share_allotment': '股东售股数量', 'total_net_proceeds': '发行费用', 'over_allotment_proceeds': '超额配售募资总额', 'over_allotment_net_proceeds': '超额配售募资净额', 'issue_vol_planned': '计划发行量', 'proceeds_planned': '计划募集资金总额', 'net_proceeds_planned': '计划募集资金净额', 'issue_cost_planned': '计划发行费用', 'pub_apply_multiple': '首发公众认购倍数', 'allotment_apply_multiple': '首发配售申请倍数', 'issue_pe_diluted': '首发市盈率（摊薄）', 'issue_price_floor': '发行价格下限', 'issue_price_ceiling': '发行价格上限', 'first_underwriter_allotment': '最大承配人配售股数', 'first_5_underwriters_allotment': '前5大承配人配售股数', 'first_10_underwriters_allotment': '前10大承配人配售股数', 'currency_unit': '面值单位', 'issue_vol': '发行量', 'new_share_vol': '新股发行数量', 'total_proceeds': '募集资金总额', 'net_proceeds': '募集资金净额', 'issue_method': '发行方式', 'issue_price_change': '每股发行价', 'issue_object': '发行对象', 'par_value': '面值'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_basic_data", method="hk_ipo", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_company(en_prod_code: str = None, year: str = None, level: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股上市公司的基础信息，包括名称、成立日期、注册地点、注册资本、公司业务、所属行业分类、主席、公司秘书、联系方式等信息
    https://udata.hs.net/datas/499/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    year          String  否      年度      默认参数为：2021
    level         String  否      等级      默认参数为：0
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                 类型      长度  说明                    备注
    ---------------------  ------  ------  ----------------------  ------
    prod_code              String    20    证劵代码
    company_pro            String    20    公司属性
    fis_year_after_change  String    20    会计年结日
    register_currency      String    20    注册资本货币单位
    secretary              String    20    公司秘书
    certified_accountant   String    20    合资格会计师
    brief_introduction     String    20    公司简介
    employee_sum           Float     16.4  员工总数
    regoffice              String    20    注册办事处
    legal_consultant       String    20    法律顾问
    auditor                String    20    核数师
    eng_name               String    20    公司英文名称
    chairman               String    20    主席
    major_business         String    20    经营范围
    reg_abbr               String    20    注册地址
    officeaddress          String    20    总办事处及主要营业地点
    registrars             String    20    股份过户处(香港)
    email                  String    20    邮箱
    website                String    20    网址
    industry_chke          String    20    所属行业-港交所
    industry_chs           String    20    所属行业-恒生
    chi_name               String    20    公司中文名称
    regcapital             Float     16.4  注册资本
    tel                    String    20    电话
    fax                    String    20    传真
    establishment_date     String    20    成立日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'company_pro': 'str', 'fis_year_after_change': 'str', 'register_currency': 'str', 'secretary': 'str', 'certified_accountant': 'str', 'brief_introduction': 'str', 'employee_sum': 'float', 'regoffice': 'str', 'legal_consultant': 'str', 'auditor': 'str', 'eng_name': 'str', 'chairman': 'str', 'major_business': 'str', 'reg_abbr': 'str', 'officeaddress': 'str', 'registrars': 'str', 'email': 'str', 'website': 'str', 'industry_chke': 'str', 'industry_chs': 'str', 'chi_name': 'str', 'regcapital': 'float', 'tel': 'str', 'fax': 'str', 'establishment_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'company_pro': '公司属性', 'fis_year_after_change': '会计年结日', 'register_currency': '注册资本货币单位', 'secretary': '公司秘书', 'certified_accountant': '合资格会计师', 'brief_introduction': '公司简介', 'employee_sum': '员工总数', 'regoffice': '注册办事处', 'legal_consultant': '法律顾问', 'auditor': '核数师', 'eng_name': '公司英文名称', 'chairman': '主席', 'major_business': '经营范围', 'reg_abbr': '注册地址', 'officeaddress': '总办事处及主要营业地点', 'registrars': '股份过户处(香港)', 'email': '邮箱', 'website': '网址', 'industry_chke': '所属行业-港交所', 'industry_chs': '所属行业-恒生', 'chi_name': '公司中文名称', 'regcapital': '注册资本', 'tel': '电话', 'fax': '传真', 'establishment_date': '成立日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_basic_data", method="hk_company", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_secu(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股的基本信息，包含股票交易代码、股票简称、上市时间、上市状态、上市板块、所属概念板块及可能有的同公司A股、B股信息等信息
    https://udata.hs.net/datas/500/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    trading_date  String  否      交易日期  默认参数为：2021-05-20
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型      长度  说明            备注
    -------------  ------  ------  --------------  --------
    prod_code      String    20    证劵代码
    trading_date   String    20    交易日期
    par_value      Float     16.4  股票面值
    listed_date    String    20    上市日期
    secu_category  String    20    证券类别
    chi_spelling   String    20    拼音证券简称
    secu_code      String    20    证券代码
    astock_code    String    20    同公司A股代码
    astock_abbr    String    20    同公司A股简称
    alias_name     String    20    曾用名
    trade_unit     Float     16.4  买卖单位
    currency_unit  String    20    面值单位        交易币种
    secu_market    String    20    上市地点
    listed_sector  String    20    上市板块
    listed_state   String    20    上市状态
    sh_hk_flag     String    20    是否沪港通标的
    sz_hk_flag     String    20    是否深港通标的
    secu_abbr      String    20    证券简称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'par_value': 'float', 'listed_date': 'str', 'secu_category': 'str', 'chi_spelling': 'str', 'secu_code': 'str', 'astock_code': 'str', 'astock_abbr': 'str', 'alias_name': 'str', 'trade_unit': 'float', 'currency_unit': 'str', 'secu_market': 'str', 'listed_sector': 'str', 'listed_state': 'str', 'sh_hk_flag': 'str', 'sz_hk_flag': 'str', 'secu_abbr': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'par_value': '股票面值', 'listed_date': '上市日期', 'secu_category': '证券类别', 'chi_spelling': '拼音证券简称', 'secu_code': '证券代码', 'astock_code': '同公司A股代码', 'astock_abbr': '同公司A股简称', 'alias_name': '曾用名', 'trade_unit': '买卖单位', 'currency_unit': '面值单位', 'secu_market': '上市地点', 'listed_sector': '上市板块', 'listed_state': '上市状态', 'sh_hk_flag': '是否沪港通标的', 'sz_hk_flag': '是否深港通标的', 'secu_abbr': '证券简称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_basic_data", method="hk_secu", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_leader(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取上市公司管理层任职信息，包括董事长、总经理、副董事长、财务总监、监事会主席等高管；
    https://udata.hs.net/datas/569/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                备注
    -----------------------------  ------  ------  ------------------  ------
    prod_code                      String      20  证劵代码
    trading_date                   String      20  交易日期
    vice_leader_name               String      20  副董事长
    secretary                      String      20  董事会秘书
    chief_financial_officer        String      20  财务总监
    vice_general_manager           String      20  副总经理
    supervisory_board_chairman     String      20  监事会主席
    leader_name_incumbent          String      20  董事（现任）
    ind_leader_name_incumbent      String      20  独立董事（现任）
    supervisor_incumbent           String      20  监事（现任）
    employee_supervisor_incumbent  String      20  职工监事（现任）
    general_manager                String      20  总经理
    in_date_leader_name            String      20  董事长任职日期
    in_date_general_manager        String      20  总经理任职日期
    in_date_secretary              String      20  董事会秘书任职日期
    in_date_chief_fin_officer      String      20  财务总监任职日期
    in_date_super_board_chairman   String      20  监事会主席任职日期
    leader_name                    String      20  董事长
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'vice_leader_name': 'str', 'secretary': 'str', 'chief_financial_officer': 'str', 'vice_general_manager': 'str', 'supervisory_board_chairman': 'str', 'leader_name_incumbent': 'str', 'ind_leader_name_incumbent': 'str', 'supervisor_incumbent': 'str', 'employee_supervisor_incumbent': 'str', 'general_manager': 'str', 'in_date_leader_name': 'str', 'in_date_general_manager': 'str', 'in_date_secretary': 'str', 'in_date_chief_fin_officer': 'str', 'in_date_super_board_chairman': 'str', 'leader_name': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'vice_leader_name': '副董事长', 'secretary': '董事会秘书', 'chief_financial_officer': '财务总监', 'vice_general_manager': '副总经理', 'supervisory_board_chairman': '监事会主席', 'leader_name_incumbent': '董事（现任）', 'ind_leader_name_incumbent': '独立董事（现任）', 'supervisor_incumbent': '监事（现任）', 'employee_supervisor_incumbent': '职工监事（现任）', 'general_manager': '总经理', 'in_date_leader_name': '董事长任职日期', 'in_date_general_manager': '总经理任职日期', 'in_date_secretary': '董事会秘书任职日期', 'in_date_chief_fin_officer': '财务总监任职日期', 'in_date_super_board_chairman': '监事会主席任职日期', 'leader_name': '董事长'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_basic_data", method="hk_leader", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_daily_quote(en_prod_code: str = None, trading_date: str = None, adjust_way: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股日行情的指标，比如前收盘价、开盘价、最高价、最低价、收盘价、均价、涨跌、涨跌幅等指标
    https://udata.hs.net/datas/501/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数设置为：00700.HK
    trading_date  String  否      交易日期  默认参数设置为：2021-05-20
    adjust_way    String  否      复权方式  默认参数设置为：1，0-不复权，1-前复权，2-后复权
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                   类型      长度  说明                   备注
    -----------------------  ------  ------  ---------------------  ------
    prod_code                String    20    证劵代码
    trading_date             String    20    交易日期
    open_price               Float     16.4  开盘价
    high_price               Float     16.4  最高价
    low_price                Float     16.4  最低价
    close_price              Float     16.4  昨收盘
    px_change                Float     16.4  价格涨跌
    px_change_rate           Float     16.4  涨跌幅
    amplitude                Float     16.4  振幅
    issue_price_change       Float     16.4  相对发行价涨跌
    turnover_status          String    20    交易状态
    currency_name            String    20    货币名称
    recently_trading_date    String    20    最近交易日期
    average_price            Float     16.4  平均价
    turnover_ratio           Float     16.4  换手率
    business_amount          Float     16.4  成交数量
    business_balance         Float     16.4  成交金额
    issue_price_change_rate  Float     16.4  相对发行价涨跌幅（%）
    ratio_adjust_factor      Float     16.4  复权因子
    prev_close_price         Float     16.4  前收盘价
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'open_price': 'float', 'high_price': 'float', 'low_price': 'float', 'close_price': 'float', 'px_change': 'float', 'px_change_rate': 'float', 'amplitude': 'float', 'issue_price_change': 'float', 'turnover_status': 'str', 'currency_name': 'str', 'recently_trading_date': 'str', 'average_price': 'float', 'turnover_ratio': 'float', 'business_amount': 'float', 'business_balance': 'float', 'issue_price_change_rate': 'float', 'ratio_adjust_factor': 'float', 'prev_close_price': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'open_price': '开盘价', 'high_price': '最高价', 'low_price': '最低价', 'close_price': '昨收盘', 'px_change': '价格涨跌', 'px_change_rate': '涨跌幅', 'amplitude': '振幅', 'issue_price_change': '相对发行价涨跌', 'turnover_status': '交易状态', 'currency_name': '货币名称', 'recently_trading_date': '最近交易日期', 'average_price': '平均价', 'turnover_ratio': '换手率', 'business_amount': '成交数量', 'business_balance': '成交金额', 'issue_price_change_rate': '相对发行价涨跌幅（%）', 'ratio_adjust_factor': '复权因子', 'prev_close_price': '前收盘价'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_daily_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_weekly_quote(en_prod_code: str = None, trading_date: str = None, adjust_way: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股周行情中的指标，比如周前收盘价、周开盘价、周最高价、周最低价、周收盘价、周均价、周涨跌、周涨跌幅等指标
    https://udata.hs.net/datas/502/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数设置为：00700.HK
    trading_date  String  否      交易日期  默认参数设置为：2021-05-20
    adjust_way    String  否      复权方式  默认参数设置为：1，0-不复权，1-前复权，2-后复权
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                 备注
    -------------------------  ------  ------  -------------------  ------
    prod_code                  String    20    证劵代码
    trading_date               String    20    交易日期
    week_close_price           Float     16.4  周收盘价
    week_open_price            Float     16.4  周开盘价
    week_high_price            Float     16.4  周最高价
    week_low_price             Float     16.4  周最低价
    week_average_price         Float     16.4  周均价
    week_px_change             Float     16.4  周涨跌
    week_px_change_rate        Float     16.4  周涨跌幅（%）
    week_amplitude             Float     16.4  周振幅（%）
    week_max_close_price       Float     16.4  周最高收盘价
    week_min_close_price       Float     16.4  周最低收盘价
    week_avg_business_balance  Float     16.4  周日均成交额
    week_avg_business_amount   Float     16.4  周日均成交量
    week_turnover_ratio        Float     16.4  周换手率（%）
    week_avg_turnover_ratio    Float     16.4  周日平均换手率（%）
    week_business_balance      Float     16.4  周成交额
    week_business_amount       Float     16.4  周成交量
    week_high_price_date       String    20    周最高价日
    week_low_price_date        String    20    周最低价日
    week_max_close_price_date  String    20    周最高收盘价日
    week_min_close_price_date  String    20    周最低收盘价日
    week_prev_close_price      Float     16.4  周前收盘价
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'week_close_price': 'float', 'week_open_price': 'float', 'week_high_price': 'float', 'week_low_price': 'float', 'week_average_price': 'float', 'week_px_change': 'float', 'week_px_change_rate': 'float', 'week_amplitude': 'float', 'week_max_close_price': 'float', 'week_min_close_price': 'float', 'week_avg_business_balance': 'float', 'week_avg_business_amount': 'float', 'week_turnover_ratio': 'float', 'week_avg_turnover_ratio': 'float', 'week_business_balance': 'float', 'week_business_amount': 'float', 'week_high_price_date': 'str', 'week_low_price_date': 'str', 'week_max_close_price_date': 'str', 'week_min_close_price_date': 'str', 'week_prev_close_price': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'week_close_price': '周收盘价', 'week_open_price': '周开盘价', 'week_high_price': '周最高价', 'week_low_price': '周最低价', 'week_average_price': '周均价', 'week_px_change': '周涨跌', 'week_px_change_rate': '周涨跌幅（%）', 'week_amplitude': '周振幅（%）', 'week_max_close_price': '周最高收盘价', 'week_min_close_price': '周最低收盘价', 'week_avg_business_balance': '周日均成交额', 'week_avg_business_amount': '周日均成交量', 'week_turnover_ratio': '周换手率（%）', 'week_avg_turnover_ratio': '周日平均换手率（%）', 'week_business_balance': '周成交额', 'week_business_amount': '周成交量', 'week_high_price_date': '周最高价日', 'week_low_price_date': '周最低价日', 'week_max_close_price_date': '周最高收盘价日', 'week_min_close_price_date': '周最低收盘价日', 'week_prev_close_price': '周前收盘价'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_weekly_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_monthly_quote(en_prod_code: str = None, trading_date: str = None, adjust_way: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股月行情中的指标，比如月前收盘价、月开盘价、月最高价、月最低价、月收盘价、月均价、月涨跌、月涨跌幅等指标
    https://udata.hs.net/datas/503/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数设置为：00700.HK
    trading_date  String  否      交易日期  默认参数设置为：2021-05-20
    adjust_way    String  否      复权方式  默认参数设置为：1，0-不复权，1-前复权，2-后复权
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                      类型      长度  说明                 备注
    --------------------------  ------  ------  -------------------  ------
    prod_code                   String    20    证劵代码
    trading_date                String    20    交易日期
    month_close_price           Float     16.4  月收盘价
    month_open_price            Float     16.4  月开盘价
    month_high_price            Float     16.4  月最高价
    month_low_price             Float     16.4  月最低价
    month_average_price         Float     16.4  月均价
    month_px_change             Float     16.4  月涨跌
    month_px_change_rate        Float     16.4  月涨跌幅（%）
    month_amplitude             Float     16.4  月振幅（%）
    month_max_close_price       Float     16.4  月最高收盘价
    month_min_close_price       Float     16.4  月最低收盘价
    month_avg_business_balance  Float     16.4  月日均成交额
    month_avg_business_amount   Float     16.4  月日均成交量
    month_turnover_ratio        Float     16.4  月换手率（%）
    month_avg_turnover_ratio    Float     16.4  月日平均换手率（%）
    month_business_balance      Float     16.4  月成交额
    month_business_amount       Float     16.4  月成交量
    month_high_price_date       String    20    月最高价日
    month_low_price_date        String    20    月最低价日
    month_max_close_price_date  String    20    月最高收盘价日
    month_min_close_price_date  String    20    月最低收盘价日
    month_prev_close_price      Float     16.4  月前收盘价
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'month_close_price': 'float', 'month_open_price': 'float', 'month_high_price': 'float', 'month_low_price': 'float', 'month_average_price': 'float', 'month_px_change': 'float', 'month_px_change_rate': 'float', 'month_amplitude': 'float', 'month_max_close_price': 'float', 'month_min_close_price': 'float', 'month_avg_business_balance': 'float', 'month_avg_business_amount': 'float', 'month_turnover_ratio': 'float', 'month_avg_turnover_ratio': 'float', 'month_business_balance': 'float', 'month_business_amount': 'float', 'month_high_price_date': 'str', 'month_low_price_date': 'str', 'month_max_close_price_date': 'str', 'month_min_close_price_date': 'str', 'month_prev_close_price': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'month_close_price': '月收盘价', 'month_open_price': '月开盘价', 'month_high_price': '月最高价', 'month_low_price': '月最低价', 'month_average_price': '月均价', 'month_px_change': '月涨跌', 'month_px_change_rate': '月涨跌幅（%）', 'month_amplitude': '月振幅（%）', 'month_max_close_price': '月最高收盘价', 'month_min_close_price': '月最低收盘价', 'month_avg_business_balance': '月日均成交额', 'month_avg_business_amount': '月日均成交量', 'month_turnover_ratio': '月换手率（%）', 'month_avg_turnover_ratio': '月日平均换手率（%）', 'month_business_balance': '月成交额', 'month_business_amount': '月成交量', 'month_high_price_date': '月最高价日', 'month_low_price_date': '月最低价日', 'month_max_close_price_date': '月最高收盘价日', 'month_min_close_price_date': '月最低收盘价日', 'month_prev_close_price': '月前收盘价'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_monthly_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_yearly_quote(en_prod_code: str = None, trading_date: str = None, adjust_way: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股年行情中的指标，比如年前收盘价、年开盘价、年最高价、年最低价、年收盘价、年均价、年涨跌、年涨跌幅等指标
    https://udata.hs.net/datas/504/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  -----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数设置为：00700.HK
    trading_date  String  否      交易日期  默认参数设置为：2021-05-20
    adjust_way    String  否      复权方式  默认参数设置为：1，0-不复权，1-前复权，2-后复权
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                     类型      长度  说明                 备注
    -------------------------  ------  ------  -------------------  ------
    prod_code                  String    20    证劵代码
    trading_date               String    20    交易日期
    year_average_price         Float     16.4  年均价
    year_open_price            Float     16.4  年开盘价
    year_low_price             Float     16.4  年最低价
    year_close_price           Float     16.4  年收盘价
    year_high_price            Float     16.4  年最高价
    year_px_change             Float     16.4  年涨跌
    year_px_change_rate        Float     16.4  年涨跌幅（%）
    year_amplitude             Float     16.4  年振幅（%）
    year_max_close_price       Float     16.4  年最高收盘价
    year_min_close_price       Float     16.4  年最低收盘价
    year_avg_business_balance  Float     16.4  年日均成交额
    year_avg_business_amount   Float     16.4  年日均成交量
    year_turnover_ratio        Float     16.4  年换手率（%）
    year_avg_turnover_ratio    Float     16.4  年日平均换手率（%）
    year_business_balance      Float     16.4  本年金额
    year_business_amount       Float     16.4  年成交量
    year_high_price_date       String    20    年最高价日
    year_low_price_date        String    20    年最低价日
    year_max_close_price_date  String    20    年最高收盘价日
    year_min_close_price_date  String    20    年最低收盘价日
    year_prev_close_price      Float     16.4  年前收盘价
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'year_average_price': 'float', 'year_open_price': 'float', 'year_low_price': 'float', 'year_close_price': 'float', 'year_high_price': 'float', 'year_px_change': 'float', 'year_px_change_rate': 'float', 'year_amplitude': 'float', 'year_max_close_price': 'float', 'year_min_close_price': 'float', 'year_avg_business_balance': 'float', 'year_avg_business_amount': 'float', 'year_turnover_ratio': 'float', 'year_avg_turnover_ratio': 'float', 'year_business_balance': 'float', 'year_business_amount': 'float', 'year_high_price_date': 'str', 'year_low_price_date': 'str', 'year_max_close_price_date': 'str', 'year_min_close_price_date': 'str', 'year_prev_close_price': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'year_average_price': '年均价', 'year_open_price': '年开盘价', 'year_low_price': '年最低价', 'year_close_price': '年收盘价', 'year_high_price': '年最高价', 'year_px_change': '年涨跌', 'year_px_change_rate': '年涨跌幅（%）', 'year_amplitude': '年振幅（%）', 'year_max_close_price': '年最高收盘价', 'year_min_close_price': '年最低收盘价', 'year_avg_business_balance': '年日均成交额', 'year_avg_business_amount': '年日均成交量', 'year_turnover_ratio': '年换手率（%）', 'year_avg_turnover_ratio': '年日平均换手率（%）', 'year_business_balance': '本年金额', 'year_business_amount': '年成交量', 'year_high_price_date': '年最高价日', 'year_low_price_date': '年最低价日', 'year_max_close_price_date': '年最高收盘价日', 'year_min_close_price_date': '年最低收盘价日', 'year_prev_close_price': '年前收盘价'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_yearly_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_section_quote(en_prod_code: str = None, begin_date: str = None, end_date: str = None, adjust_way: str = None, index_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股区间行情指标，比如区间前收盘价、区间开盘价、区间最高价、区间最低价 、区间收盘价、区间最高收盘价 、区间最低收盘价、区间均价等
    https://udata.hs.net/datas/506/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    begin_date    String  否      起始日期  默认参数为：系统日期-5天
    end_date      String  否      截止日期  默认参数为：系统日期
    adjust_way    String  否      复权方式  默认参数为：1
    index_code    String  否      指数代码  默认参数为：0
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                备注
    -----------------------------  ------  ------  ------------------  ------
    prod_code                      String    20    证劵代码
    begin_date                     String    20    起始日期
    end_date                       String    20    截止日期
    index_code                     String    20    指数代码
    interval_average_price         Float     16.4  区间均价
    interval_close_price           Float     16.4  区间收盘价
    interval_low_price             Float     16.4  区间最低价
    interval_open_price            Float     16.4  区间开盘价
    interval_high_price            Float     16.4  区间最高价
    interval_px_change             Float     16.4  区间涨跌
    interval_px_change_rate        Float     16.4  区间涨跌幅
    interval_amplitude             Float     16.4  区间振幅
    interval_up_down_index         Float     16.4  相对指数区间涨跌幅
    interval_trading_day           Float     16.4  区间交易日天数
    interval_susp_trading_day      Float     16.4  区间停牌天数
    interval_up_trading_day        Float     16.4  区间上涨天数
    interval_down_trading_day      Float     16.4  区间下跌天数
    interval_high_price_date       String    20    区间最高价日
    interval_low_price_date        String    20    区间最低价日
    interval_max_close_price_date  String    20    区间最高收盘价日
    interval_min_close_price_date  String    20    区间最低收盘价日
    interval_max_close_price       Float     16.4  区间最高收盘价
    interval_min_close_price       Float     16.4  区间最低收盘价
    interval_business_balance      Float     16.4  区间成交量
    interval_business_amount       Float     16.4  区间成交额
    interval_avg_business_balance  Float     16.4  区间日均成交额
    interval_avg_business_amount   Float     16.4  区间日均成交量
    interval_avg_px_change_rate    Float     16.4  区间日均涨跌幅
    interval_turnover_ratio        Float     16.4  区间换手率
    interval_avg_turnover_ratio    Float     16.4  区间日均换手率
    interval_prev_close_price      Float     16.4  区间前收盘价
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'begin_date': 'str', 'end_date': 'str', 'index_code': 'str', 'interval_average_price': 'float', 'interval_close_price': 'float', 'interval_low_price': 'float', 'interval_open_price': 'float', 'interval_high_price': 'float', 'interval_px_change': 'float', 'interval_px_change_rate': 'float', 'interval_amplitude': 'float', 'interval_up_down_index': 'float', 'interval_trading_day': 'float', 'interval_susp_trading_day': 'float', 'interval_up_trading_day': 'float', 'interval_down_trading_day': 'float', 'interval_high_price_date': 'str', 'interval_low_price_date': 'str', 'interval_max_close_price_date': 'str', 'interval_min_close_price_date': 'str', 'interval_max_close_price': 'float', 'interval_min_close_price': 'float', 'interval_business_balance': 'float', 'interval_business_amount': 'float', 'interval_avg_business_balance': 'float', 'interval_avg_business_amount': 'float', 'interval_avg_px_change_rate': 'float', 'interval_turnover_ratio': 'float', 'interval_avg_turnover_ratio': 'float', 'interval_prev_close_price': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'begin_date': '起始日期', 'end_date': '截止日期', 'index_code': '指数代码', 'interval_average_price': '区间均价', 'interval_close_price': '区间收盘价', 'interval_low_price': '区间最低价', 'interval_open_price': '区间开盘价', 'interval_high_price': '区间最高价', 'interval_px_change': '区间涨跌', 'interval_px_change_rate': '区间涨跌幅', 'interval_amplitude': '区间振幅', 'interval_up_down_index': '相对指数区间涨跌幅', 'interval_trading_day': '区间交易日天数', 'interval_susp_trading_day': '区间停牌天数', 'interval_up_trading_day': '区间上涨天数', 'interval_down_trading_day': '区间下跌天数', 'interval_high_price_date': '区间最高价日', 'interval_low_price_date': '区间最低价日', 'interval_max_close_price_date': '区间最高收盘价日', 'interval_min_close_price_date': '区间最低收盘价日', 'interval_max_close_price': '区间最高收盘价', 'interval_min_close_price': '区间最低收盘价', 'interval_business_balance': '区间成交量', 'interval_business_amount': '区间成交额', 'interval_avg_business_balance': '区间日均成交额', 'interval_avg_business_amount': '区间日均成交量', 'interval_avg_px_change_rate': '区间日均涨跌幅', 'interval_turnover_ratio': '区间换手率', 'interval_avg_turnover_ratio': '区间日均换手率', 'interval_prev_close_price': '区间前收盘价'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_section_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_daily_quote_short(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股日行情中的卖空指标，比如货币、成交额、成交量等
    https://udata.hs.net/datas/507/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名         类型      长度  说明      备注
    -------------  ------  ------  --------  ------
    en_prod_code   String    20    证劵代码
    trading_date   String    20    交易日期
    short_balance  Float     16.4  缺口资金
    short_amount   Float     16.4  缺口数量
    currency_name  String    20    货币名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'en_prod_code': 'str', 'trading_date': 'str', 'short_balance': 'float', 'short_amount': 'float', 'currency_name': 'str'}
    column_name_dict = {'en_prod_code': '证劵代码', 'trading_date': '交易日期', 'short_balance': '缺口资金', 'short_amount': '缺口数量', 'currency_name': '货币名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_daily_quote_short", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_weekly_quote_short(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股周行情中的卖空指标，比如货币、周成交额、周成交量等
    https://udata.hs.net/datas/508/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名              类型      长度  说明      备注
    ------------------  ------  ------  --------  ------
    prod_code           String    20    证劵代码
    trading_date        String    20    交易日期
    week_short_balance  Float     16.4  周成交量
    week_short_amount   Float     16.4  周成交额
    currency_name       String    20    货币名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'week_short_balance': 'float', 'week_short_amount': 'float', 'currency_name': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'week_short_balance': '周成交量', 'week_short_amount': '周成交额', 'currency_name': '货币名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_weekly_quote_short", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_monthly_quote_short(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股月行情中的卖空指标，比如货币、月成交额、月成交量等
    https://udata.hs.net/datas/510/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明      备注
    -------------------  ------  ------  --------  ------
    prod_code            String    20    证劵代码
    trading_date         String    20    交易日期
    month_short_balance  Float     16.4  月成交额
    month_short_amount   Float     16.4  月成交量
    currency_name        String    20    货币名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'month_short_balance': 'float', 'month_short_amount': 'float', 'currency_name': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'month_short_balance': '月成交额', 'month_short_amount': '月成交量', 'currency_name': '货币名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_monthly_quote_short", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_yearly_quote_short(en_prod_code: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股年行情中的卖空指标，比如货币、年成交额、年成交量等
    https://udata.hs.net/datas/511/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    trading_date  String  否      交易日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名              类型      长度  说明      备注
    ------------------  ------  ------  --------  ------
    prod_code           String    20    证劵代码
    trading_date        String    20    交易日期
    year_short_balance  Float     16.4  年成交额
    year_short_amount   Float     16.4  年成交量
    currency_name       String    20    货币名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'year_short_balance': 'float', 'year_short_amount': 'float', 'currency_name': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'trading_date': '交易日期', 'year_short_balance': '年成交额', 'year_short_amount': '年成交量', 'currency_name': '货币名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_yearly_quote_short", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_section_quote_short(en_prod_code: str = None, begin_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股区间行情中的卖空指标，比如货币、区间成交量、区间成交额
    https://udata.hs.net/datas/512/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    begin_date    String  否      起始日期  默认参数为：系统日期-5天
    end_date      String  否      截止日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型      长度  说明        备注
    ----------------------  ------  ------  ----------  ------
    prod_code               String    20    证劵代码
    begin_date              String    20    起始日期
    end_date                String    20    截止日期
    interval_short_balance  Float     16.4  区间成交额
    interval_short_amount   Float     16.4  区间成交量
    currency_name           String    20    货币
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'begin_date': 'str', 'end_date': 'str', 'interval_short_balance': 'float', 'interval_short_amount': 'float', 'currency_name': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'begin_date': '起始日期', 'end_date': '截止日期', 'interval_short_balance': '区间成交额', 'interval_short_amount': '区间成交量', 'currency_name': '货币'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_section_quote_short", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_minutes_hkscclist(comp_type: str = None, fields: str = None, **kwargs)->Query:
    """
    取得港股通(沪)与港股通(深)代码列表，用于港股通行情查询
    https://udata.hs.net/datas/513/
    <参数>
    名称       类型    必填    说明        备注
    ---------  ------  ------  ----------  ----------------------------------------------
    comp_type  String  否      成分股类别  默认参数为1，1-港股通(沪)，4-港股通(深)
    fields     String  否      字段集合    默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名     类型      长度  说明      备注
    ---------  ------  ------  --------  ------
    gil_code   String      20  聚源代码
    secu_code  String      20  证券代码
    secu_abbr  String      20  证券简称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'gil_code': 'str', 'secu_code': 'str', 'secu_abbr': 'str'}
    column_name_dict = {'gil_code': '聚源代码', 'secu_code': '证券代码', 'secu_abbr': '证券简称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_minutes_hkscclist", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_minutes_hkscc(en_prod_code: str = None, begin_date: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    港股通盘后1分钟切片；
    https://udata.hs.net/datas/514/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证券代码  默认参数为：00700.HK；只支持单只股票代码
    begin_date    String  否      起始日期  默认参数为：系统日期-1天
    end_date      String  否      结束日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名           类型      长度  说明        备注
    ---------------  ------  ------  ----------  ------
    date             String    20    日期
    time             String    20    发生时间
    open             Float     16.4  开盘价(元)
    high             Float     16.4  最高价(元)
    low              Float     16.4  最低价(元)
    close            Float     16.4  收盘价(元)
    turnover_volume  Float     16.4  成交量
    turnover_value   Float     16.4  成交额
    change           Float     16.4  涨跌幅(元)
    change_pct       Float     16.4  涨跌幅(%)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'time': 'str', 'open': 'float', 'high': 'float', 'low': 'float', 'close': 'float', 'turnover_volume': 'float', 'turnover_value': 'float', 'change': 'float', 'change_pct': 'float'}
    column_name_dict = {'date': '日期', 'time': '发生时间', 'open': '开盘价(元)', 'high': '最高价(元)', 'low': '最低价(元)', 'close': '收盘价(元)', 'turnover_volume': '成交量', 'turnover_value': '成交额', 'change': '涨跌幅(元)', 'change_pct': '涨跌幅(%)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_quotation_data", method="hk_minutes_hkscc", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_share_stru(en_prod_code: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股的具体股本结构信息
    https://udata.hs.net/datas/515/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK；支持输入多个股票代码；
    end_date      String  否      截止日期  默认参数为：系统日期
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                    类型      长度  说明                备注
    ------------------------  ------  ------  ------------------  ------
    prod_code                 String    20    证劵代码
    end_date                  String    20    截止日期
    paid_up_shares_com_share  Float     16.4  普通股
    paid_up_shares_pre_share  Float     16.4  优先股
    total_listed_shares       Float     16.4  港股
    listed_shares_ratio       Float     16.4  港股占普通股比例
    non_listed_shares_ratio   Float     16.4  非港股占普通股比例
    authorized_share_ratio    Float     16.4  优先股占总股本比例
    not_hk_shares             Float     16.4  非港股
    com_share_ratio           Float     16.4  普通股占总股本比例
    total_shares              Float     16.4  总股本
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'end_date': 'str', 'paid_up_shares_com_share': 'float', 'paid_up_shares_pre_share': 'float', 'total_listed_shares': 'float', 'listed_shares_ratio': 'float', 'non_listed_shares_ratio': 'float', 'authorized_share_ratio': 'float', 'not_hk_shares': 'float', 'com_share_ratio': 'float', 'total_shares': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'end_date': '截止日期', 'paid_up_shares_com_share': '普通股', 'paid_up_shares_pre_share': '优先股', 'total_listed_shares': '港股', 'listed_shares_ratio': '港股占普通股比例', 'non_listed_shares_ratio': '非港股占普通股比例', 'authorized_share_ratio': '优先股占总股本比例', 'not_hk_shares': '非港股', 'com_share_ratio': '普通股占总股本比例', 'total_shares': '总股本'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_share_stru", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_exgindustry(standard: str = None, secu_code: str = None, fields: str = None, **kwargs)->Query:
    """
    港股公司行业划分目前共4个，包括：8-GICS行业分类，24-申万行业分类2014版（目前分类范围为陆港通公司），22-证监会行业分类2012版（目前分类范围为陆港通公司），100-恒生行业分类（港交所）
    https://udata.hs.net/datas/516/
    <参数>
    名称       类型    必填    说明          备注
    ---------  ------  ------  ------------  -------------------------------------------------------------------------------------------------------------------------------------------------------
    standard   String  否      行业划分标准  默认参数为：100，8-GICS行业分类，24-申万行业分类（目前分类范围为陆港通公司），22-证监会行业分类（目前分类范围为陆港通公司），100-恒生行业分类（港交所）
    secu_code  String  否      港股代码      默认参数为：00700
    fields     String  否      字段集合      默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名               类型      长度  说明          备注
    -------------------  ------  ------  ------------  ------
    secu_code            String      20  港股代码
    secu_abbr            String      20  港股简称
    standard             String      20  行业划分类型
    one_industry_name    String      20  一级行业名称
    two_industry_name    String      20  二级行业名称
    three_industry_name  String      20  三级行业名称
    four_industry_name   String      20  四级行业名称
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'standard': 'str', 'one_industry_name': 'str', 'two_industry_name': 'str', 'three_industry_name': 'str', 'four_industry_name': 'str'}
    column_name_dict = {'secu_code': '港股代码', 'secu_abbr': '港股简称', 'standard': '行业划分类型', 'one_industry_name': '一级行业名称', 'two_industry_name': '二级行业名称', 'three_industry_name': '三级行业名称', 'four_industry_name': '四级行业名称'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_exgindustry", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_cap_structure(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股资本结构的指标，如资产负债率、长期资本负债率、权益乘数、流动资产/总资产、非流动资产/总资产、资本固定化比率等
    https://udata.hs.net/datas/517/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    report_date   String  否      申报日期  默认参数为：2020-12-31
    report_type   String  否      财报类型  默认参数为：0，0-合并未调整，1-合并调整，2-母公司未调整，3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                             类型      长度  说明                        备注
    ---------------------------------  ------  ------  --------------------------  ------
    prod_code                          String    20    证劵代码
    report_date                        String    20    申报日期
    debt_assets_ratio                  Float     16.4  资产负债率
    t_liability_ar                     Float     16.4  剔除预收账款后的资产负债率
    long_term_capital_liability_ratio  Float     16.4  长期资本负债率
    equity_multipler                   Float     16.4  权益乘数
    current_assets_to_ta               Float     16.4  流动资产/总资产
    non_current_assets_to_ta           Float     16.4  非流动资产/总资产
    total_non_current_liability_ratio  Float     16.4  非流动负债权益比率
    total_current_liability_ratio      Float     16.4  流动负债权益比率
    operating_assets                   Float     16.4  营运资产/总资产
    current_liability_to_tl            Float     16.4  流动负债/负债合计
    non_current_liability_to_tl        Float     16.4  非流动负债/负债合计
    capital_fix_ratio                  Float     16.4  资本固定化比率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'debt_assets_ratio': 'float', 't_liability_ar': 'float', 'long_term_capital_liability_ratio': 'float', 'equity_multipler': 'float', 'current_assets_to_ta': 'float', 'non_current_assets_to_ta': 'float', 'total_non_current_liability_ratio': 'float', 'total_current_liability_ratio': 'float', 'operating_assets': 'float', 'current_liability_to_tl': 'float', 'non_current_liability_to_tl': 'float', 'capital_fix_ratio': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'debt_assets_ratio': '资产负债率', 't_liability_ar': '剔除预收账款后的资产负债率', 'long_term_capital_liability_ratio': '长期资本负债率', 'equity_multipler': '权益乘数', 'current_assets_to_ta': '流动资产/总资产', 'non_current_assets_to_ta': '非流动资产/总资产', 'total_non_current_liability_ratio': '非流动负债权益比率', 'total_current_liability_ratio': '流动负债权益比率', 'operating_assets': '营运资产/总资产', 'current_liability_to_tl': '流动负债/负债合计', 'non_current_liability_to_tl': '非流动负债/负债合计', 'capital_fix_ratio': '资本固定化比率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_cap_structure", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_profit_ability(en_prod_code: str = None, report_date: str = None, report_type: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股上市公司的盈利能力的指标，如净资产收益率、总资产报酬率、销售毛利率、净利润/营业总收入、销售费用/营业总收入、销售毛利率等
    https://udata.hs.net/datas/518/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    report_date   String  否      申报日期  默认参数为：2020-12-31
    report_type   String  否      财报类型  默认参数为：0，0-合并未调整，1-合并调整，2-母公司未调整，3-母公司调整
    trading_date  String  否      交易日期  默认参数为：系统时间
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                       类型      长度  说明                             备注
    ---------------------------  ------  ------  -------------------------------  ------
    prod_code                    String    20    证劵代码
    report_date                  String    20    申报日期
    roe                          Float     16.4  净资产收益率ROE(摊薄)
    roe_avg                      Float     16.4  净资产收益率ROE(平均/计算值)
    roe_year                     Float     16.4  净资产收益率ROE-年化
    assets_re                    Float     16.4  总资产报酬率
    assets_re_year               Float     16.4  总资产报酬率-年化
    assets_rate                  Float     16.4  总资产净利率
    assets_rate_year             Float     16.4  总资产净利率-年化
    net_profit_ratio             Float     16.4  销售净利率
    gross_income_ratio           Float     16.4  销售毛利率
    sales_cost_ratio             Float     16.4  销售成本率
    period_costs_rate            Float     16.4  销售期间费用率
    np_to_tor                    Float     16.4  净利润/营业总收入
    net_profit_income            Float     16.4  归属母公司股东净利润/营业总收入
    operating_profit_to_tor      Float     16.4  营业利润／营业总收入
    ebit_to_tor                  Float     16.4  息税前利润／营业总收入
    operating_expense_rate       Float     16.4  销售费用/营业总收入
    admini_expense_rate          Float     16.4  管理费用/营业总收入
    financial_expense_rate       Float     16.4  财务费用/营业总收入
    asset_impa_loss_to_tor       Float     16.4  资产减值损失/营业总收入
    loss_profit                  Float     16.4  资产减值损失/营业利润
    roe_ttm                      Float     16.4  净资产收益率ROE(TTM)
    roa_ebit_ttm                 Float     16.4  总资产报酬率ROA(TTM)
    roa_ttm                      Float     16.4  总资产净利率ROA(TTM)
    net_profit_ratio_ttm         Float     16.4  销售净利率_TTM
    gross_income_ratio_ttm       Float     16.4  销售毛利率(TTM)
    period_costs_rate_ttm        Float     16.4  销售期间费用率_TTM
    np_to_tor_ttm                Float     16.4  净利润／营业总收入_TTM
    operating_profit_to_tor_ttm  Float     16.4  营业利润/营业总收入(TTM)
    ebit_to_tor_ttm              Float     16.4  息税前利润/营业总收入(TTM)
    operating_expense_rate_ttm   Float     16.4  销售费用／营业总收入_TTM
    admini_expense_rate_ttm      Float     16.4  管理费用／营业总收入_TTM
    financial_expense_rate_ttm   Float     16.4  财务费用／营业总收入_TTM
    asset_impa_loss_to_tor_ttm   Float     16.4  资产减值损失／营业总收入_TTM
    loss_profit_ttm              Float     16.4  资产减值损失/营业利润(TTM)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'roe': 'float', 'roe_avg': 'float', 'roe_year': 'float', 'assets_re': 'float', 'assets_re_year': 'float', 'assets_rate': 'float', 'assets_rate_year': 'float', 'net_profit_ratio': 'float', 'gross_income_ratio': 'float', 'sales_cost_ratio': 'float', 'period_costs_rate': 'float', 'np_to_tor': 'float', 'net_profit_income': 'float', 'operating_profit_to_tor': 'float', 'ebit_to_tor': 'float', 'operating_expense_rate': 'float', 'admini_expense_rate': 'float', 'financial_expense_rate': 'float', 'asset_impa_loss_to_tor': 'float', 'loss_profit': 'float', 'roe_ttm': 'float', 'roa_ebit_ttm': 'float', 'roa_ttm': 'float', 'net_profit_ratio_ttm': 'float', 'gross_income_ratio_ttm': 'float', 'period_costs_rate_ttm': 'float', 'np_to_tor_ttm': 'float', 'operating_profit_to_tor_ttm': 'float', 'ebit_to_tor_ttm': 'float', 'operating_expense_rate_ttm': 'float', 'admini_expense_rate_ttm': 'float', 'financial_expense_rate_ttm': 'float', 'asset_impa_loss_to_tor_ttm': 'float', 'loss_profit_ttm': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'roe': '净资产收益率ROE(摊薄)', 'roe_avg': '净资产收益率ROE(平均/计算值)', 'roe_year': '净资产收益率ROE-年化', 'assets_re': '总资产报酬率', 'assets_re_year': '总资产报酬率-年化', 'assets_rate': '总资产净利率', 'assets_rate_year': '总资产净利率-年化', 'net_profit_ratio': '销售净利率', 'gross_income_ratio': '销售毛利率', 'sales_cost_ratio': '销售成本率', 'period_costs_rate': '销售期间费用率', 'np_to_tor': '净利润/营业总收入', 'net_profit_income': '归属母公司股东净利润/营业总收入', 'operating_profit_to_tor': '营业利润／营业总收入', 'ebit_to_tor': '息税前利润／营业总收入', 'operating_expense_rate': '销售费用/营业总收入', 'admini_expense_rate': '管理费用/营业总收入', 'financial_expense_rate': '财务费用/营业总收入', 'asset_impa_loss_to_tor': '资产减值损失/营业总收入', 'loss_profit': '资产减值损失/营业利润', 'roe_ttm': '净资产收益率ROE(TTM)', 'roa_ebit_ttm': '总资产报酬率ROA(TTM)', 'roa_ttm': '总资产净利率ROA(TTM)', 'net_profit_ratio_ttm': '销售净利率_TTM', 'gross_income_ratio_ttm': '销售毛利率(TTM)', 'period_costs_rate_ttm': '销售期间费用率_TTM', 'np_to_tor_ttm': '净利润／营业总收入_TTM', 'operating_profit_to_tor_ttm': '营业利润/营业总收入(TTM)', 'ebit_to_tor_ttm': '息税前利润/营业总收入(TTM)', 'operating_expense_rate_ttm': '销售费用／营业总收入_TTM', 'admini_expense_rate_ttm': '管理费用／营业总收入_TTM', 'financial_expense_rate_ttm': '财务费用／营业总收入_TTM', 'asset_impa_loss_to_tor_ttm': '资产减值损失／营业总收入_TTM', 'loss_profit_ttm': '资产减值损失/营业利润(TTM)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_profit_ability", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_per_share_index(en_prod_code: str = None, report_date: str = None, report_type: str = None, currency_type: str = None, trading_date: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股上市公司的财务分析指标，包括每股收益、每股净资产、每股经营活动产生的现金流、每股营业总收入、每股息税前利润、每股现金流量净额等
    https://udata.hs.net/datas/519/
    <参数>
    名称           类型    必填    说明      备注
    -------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code   String  否      证劵代码  默认参数为：00700.HK
    report_date    String  否      申报日期  默认参数为：2020-12-31
    report_type    String  否      财报类型  默认参数为：0，0-合并未调整，1-合并调整，2-母公司未调整，3-母公司调整
    currency_type  String  否      货币种类  默认参数为：0，0-原始币种，1-人民币，2-港元，3-美元
    trading_date   String  否      交易日期  默认参数为：系统时间
    fields         String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                          类型      长度  说明                                备注
    ------------------------------  ------  ------  ----------------------------------  ------
    prod_code                       String    20    证劵代码
    report_date                     String    20    申报日期
    basic_eps                       Float     16.4  基本每股收益
    diluted_eps                     Float     16.4  每股收益EPS-稀释
    new_np_parent_company_owners_t  Float     16.4  每股收益EPS-最新股本摊薄
    eps_ttm                         Float     16.4  每股收益EPS(TTM)
    naps                            Float     16.4  每股净资产
    se_without_mi_t                 Float     16.4  每股净资产BPS（最新股本摊薄）
    net_operate_cash_flow_ps        Float     16.4  每股经营活动产生的现金流量净额
    net_operate_cash_flow_ps_ttm    Float     16.4  每股经营活动产生的现金流量净额_TTM
    total_operating_revenue_ps      Float     16.4  每股营业总收入
    operating_revenue_ps            Float     16.4  每股营业收入
    operating_revenue_ps_ttm        Float     16.4  每股营业收入（TTM）
    ebit_ps                         Float     16.4  每股息税前利润
    cash_flow_ps                    Float     16.4  每股现金净流量
    cash_flow_ps_ttm                Float     16.4  每股现金流量净额_TTM
    divid_ps                        Float     16.4  每股股息
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'basic_eps': 'float', 'diluted_eps': 'float', 'new_np_parent_company_owners_t': 'float', 'eps_ttm': 'float', 'naps': 'float', 'se_without_mi_t': 'float', 'net_operate_cash_flow_ps': 'float', 'net_operate_cash_flow_ps_ttm': 'float', 'total_operating_revenue_ps': 'float', 'operating_revenue_ps': 'float', 'operating_revenue_ps_ttm': 'float', 'ebit_ps': 'float', 'cash_flow_ps': 'float', 'cash_flow_ps_ttm': 'float', 'divid_ps': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'basic_eps': '基本每股收益', 'diluted_eps': '每股收益EPS-稀释', 'new_np_parent_company_owners_t': '每股收益EPS-最新股本摊薄', 'eps_ttm': '每股收益EPS(TTM)', 'naps': '每股净资产', 'se_without_mi_t': '每股净资产BPS（最新股本摊薄）', 'net_operate_cash_flow_ps': '每股经营活动产生的现金流量净额', 'net_operate_cash_flow_ps_ttm': '每股经营活动产生的现金流量净额_TTM', 'total_operating_revenue_ps': '每股营业总收入', 'operating_revenue_ps': '每股营业收入', 'operating_revenue_ps_ttm': '每股营业收入（TTM）', 'ebit_ps': '每股息税前利润', 'cash_flow_ps': '每股现金净流量', 'cash_flow_ps_ttm': '每股现金流量净额_TTM', 'divid_ps': '每股股息'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_per_share_index", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_solvency(en_prod_code: str = None, report_date: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股偿债能力的指标，如流动比率、速动比率、货币资金/流动负债、产权比率、负债净值比率、已获利息倍数、长期负债比率等
    https://udata.hs.net/datas/520/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    report_date   String  否      申报日期  默认参数为：2020-12-31
    report_type   String  否      财报类型  默认参数为：0，0-合并未调整，1-合并调整，2-母公司未调整，3-母公司调整
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                               备注
    -----------------------------  ------  ------  ---------------------------------  ------
    prod_code                      String    20    证劵代码
    report_date                    String    20    申报日期
    current_ratio                  Float     16.4  流动比率
    quick_ratio                    Float     16.4  速动比率
    mon_curr_liabily               Float     16.4  货币资金/流动负债
    cashflow_inter_coverage_ratio  Float     16.4  现金流量利息保障倍数
    debt_equity_ratio              Float     16.4  产权比率
    sewmi_to_total_liability       Float     16.4  归属母公司股东的权益/负债合计
    net_operate_cashflow_tse       Float     16.4  现金与总资产的比率
    net_debt_equity_ratio          Float     16.4  负债净值比率
    nocf_to_current_liability      Float     16.4  经营活动产生现金流量净额/流动负债
    nocf_to_t_liability            Float     16.4  经营活动产生现金流量净额/负债合计
    interest_earned                Float     16.4  已获利息倍数
    long_debt_to_working_capital   Float     16.4  长期负债与营运资金比率
    total_nc_liability_tl          Float     16.4  长期负债占比
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'report_date': 'str', 'current_ratio': 'float', 'quick_ratio': 'float', 'mon_curr_liabily': 'float', 'cashflow_inter_coverage_ratio': 'float', 'debt_equity_ratio': 'float', 'sewmi_to_total_liability': 'float', 'net_operate_cashflow_tse': 'float', 'net_debt_equity_ratio': 'float', 'nocf_to_current_liability': 'float', 'nocf_to_t_liability': 'float', 'interest_earned': 'float', 'long_debt_to_working_capital': 'float', 'total_nc_liability_tl': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'report_date': '申报日期', 'current_ratio': '流动比率', 'quick_ratio': '速动比率', 'mon_curr_liabily': '货币资金/流动负债', 'cashflow_inter_coverage_ratio': '现金流量利息保障倍数', 'debt_equity_ratio': '产权比率', 'sewmi_to_total_liability': '归属母公司股东的权益/负债合计', 'net_operate_cashflow_tse': '现金与总资产的比率', 'net_debt_equity_ratio': '负债净值比率', 'nocf_to_current_liability': '经营活动产生现金流量净额/流动负债', 'nocf_to_t_liability': '经营活动产生现金流量净额/负债合计', 'interest_earned': '已获利息倍数', 'long_debt_to_working_capital': '长期负债与营运资金比率', 'total_nc_liability_tl': '长期负债占比'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_solvency", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_mainincomestru(secu_code: str = None, classification: str = None, end_date: str = None, fields: str = None, **kwargs)->Query:
    """
    港股上市公司主营构成情况，包含按产品、按地区、按业务等四种分类方式下主营业务的资产、负债、开支、收入等
    https://udata.hs.net/datas/523/
    <参数>
    名称            类型    必填    说明      备注
    --------------  ------  ------  --------  -----------------------------------------------
    secu_code       String  否      证券代码  默认参数为：01629
    classification  String  否      分类      默认参数为：50，20-按产品，30-按地区，50-按业务
    end_date        String  否      截止日期  默认参数为：系统时间
    fields          String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                         类型      长度  说明                备注
    -----------------------------  ------  ------  ------------------  --------
    secu_code                      String    20    证券代码
    secu_abbr                      String    20    证券简称
    end_date                       String    20    截止日期
    period_mark                    String    20    日期标志
    classification                 Float     16.4  分类
    number                         Float     16.4  序号
    items_name                     String    20    项目名称
    subsection_income_f_year       Float     16.4  同期分部收入(元)
    sale_in_dome_mark_inco_f_year  Float     16.4  同期对内销售(元)
    subse_perfor_former_year       Float     16.4  同期分部业绩(元)
    capital_expense_f_year         Float     16.4  同期资本开支(元)
    subsection_asset_at_begi       Float     16.4  期初分部资产(元)
    subsection_owes_at_begi        Float     16.4  期初分部负债(元)
    subsection_income_t_period     Float     16.4  本期分部收入(元)
    sale_in_dome_mark_inco_t_peri  Float     16.4  本期对内销售(元)
    subse_perfo_this_period        Float     16.4  本期分部业绩(元)
    capital_expense_t_period       Float     16.4  本期资本开支(元)
    subsection_asset_at_end        Float     16.4  期末分部资产(元)
    subsection_owes_at_end         Float     16.4  期末分部负债(元)
    f_earning_before_tax           Float     16.4  同期除税前溢利(元)
    t_earning_before_tax           Float     16.4  本期除税前溢利(元)
    currency_unit                  Float     16.4  面值单位            货币单位
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'secu_code': 'str', 'secu_abbr': 'str', 'end_date': 'str', 'period_mark': 'str', 'classification': 'float', 'number': 'float', 'items_name': 'str', 'subsection_income_f_year': 'float', 'sale_in_dome_mark_inco_f_year': 'float', 'subse_perfor_former_year': 'float', 'capital_expense_f_year': 'float', 'subsection_asset_at_begi': 'float', 'subsection_owes_at_begi': 'float', 'subsection_income_t_period': 'float', 'sale_in_dome_mark_inco_t_peri': 'float', 'subse_perfo_this_period': 'float', 'capital_expense_t_period': 'float', 'subsection_asset_at_end': 'float', 'subsection_owes_at_end': 'float', 'f_earning_before_tax': 'float', 't_earning_before_tax': 'float', 'currency_unit': 'float'}
    column_name_dict = {'secu_code': '证券代码', 'secu_abbr': '证券简称', 'end_date': '截止日期', 'period_mark': '日期标志', 'classification': '分类', 'number': '序号', 'items_name': '项目名称', 'subsection_income_f_year': '同期分部收入(元)', 'sale_in_dome_mark_inco_f_year': '同期对内销售(元)', 'subse_perfor_former_year': '同期分部业绩(元)', 'capital_expense_f_year': '同期资本开支(元)', 'subsection_asset_at_begi': '期初分部资产(元)', 'subsection_owes_at_begi': '期初分部负债(元)', 'subsection_income_t_period': '本期分部收入(元)', 'sale_in_dome_mark_inco_t_peri': '本期对内销售(元)', 'subse_perfo_this_period': '本期分部业绩(元)', 'capital_expense_t_period': '本期资本开支(元)', 'subsection_asset_at_end': '期末分部资产(元)', 'subsection_owes_at_end': '期末分部负债(元)', 'f_earning_before_tax': '同期除税前溢利(元)', 't_earning_before_tax': '本期除税前溢利(元)', 'currency_unit': '面值单位'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_mainincomestru", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_dividend(en_prod_code: str = None, year: str = None, report_type: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股分红的数据，如首次公告日 、事件进程 、方案说明 、每股股息 、每股特别股息(1派X元) 、每股送红股 、每股送红利认股证、每股派实物、货币种类 等
    https://udata.hs.net/datas/524/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ---------------------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00700.HK
    year          String  否      年度      默认参数为：2020
    report_type   String  否      财报类型  默认参数为：0，0-一季报，1-中报，2-三季报，3-年报，4-其他
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                  类型      长度  说明                  备注
    ----------------------  ------  ------  --------------------  ------
    prod_code               String    20    证劵代码
    procedure_desc          String    20    事件进程
    currency_unit           Float     16.4  面值单位
    warrant_dividend_rate   Float     16.4  派认股证(份)
    physical_dividend_rate  Float     16.4  派发实物(单位)
    total_cash_dividend     Float     16.4  派现总额
    dividend_base_shares    Float     16.4  派发基准股数
    total_share_dividend    Float     16.4  红股总股数
    total_warrant_dividend  Float     16.4  红利认股证总份数
    statement               String    20    方案说明
    initial_info_publ_date  String    20    首次公告日
    cash_dividend_ps        Float     16.4  每股股息
    special_dividend_ps     Float     16.4  每股特别股息(1派X元)
    stock_dividend_rate     Float     16.4  送股(股)
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'procedure_desc': 'str', 'currency_unit': 'float', 'warrant_dividend_rate': 'float', 'physical_dividend_rate': 'float', 'total_cash_dividend': 'float', 'dividend_base_shares': 'float', 'total_share_dividend': 'float', 'total_warrant_dividend': 'float', 'statement': 'str', 'initial_info_publ_date': 'str', 'cash_dividend_ps': 'float', 'special_dividend_ps': 'float', 'stock_dividend_rate': 'float'}
    column_name_dict = {'prod_code': '证劵代码', 'procedure_desc': '事件进程', 'currency_unit': '面值单位', 'warrant_dividend_rate': '派认股证(份)', 'physical_dividend_rate': '派发实物(单位)', 'total_cash_dividend': '派现总额', 'dividend_base_shares': '派发基准股数', 'total_share_dividend': '红股总股数', 'total_warrant_dividend': '红利认股证总份数', 'statement': '方案说明', 'initial_info_publ_date': '首次公告日', 'cash_dividend_ps': '每股股息', 'special_dividend_ps': '每股特别股息(1派X元)', 'stock_dividend_rate': '送股(股)'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_dividend", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def hk_buyback(en_prod_code: str = None, year: str = None, fields: str = None, **kwargs)->Query:
    """
    获取港股回购的数据，如最新公告日期、回购股份类别、面值单位 、面值 、最高价 、最低价 、本年累计回购金额 、本年累计回购数量 等
    https://udata.hs.net/datas/557/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------------------
    en_prod_code  String  否      证劵代码  默认参数为：00868.HK
    year          String  否      年度      默认参数为：2021
    fields        String  否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名                类型      长度  说明                            备注
    --------------------  ------  ------  ------------------------------  ------------------
    prod_code             String    20    证劵代码
    high_price            Float     16.4  最高价
    low_price             Float     16.4  最低价
    par_value             Float     16.4  面值
    cumulative_sum_to_ts  Float     16.4  本年累计回购数量占总股本的比例
    share_type            String    20    份额分类                        A-前收费，B-后收费
    currency_unit         Float     16.4  面值单位
    buyback_money         Float     16.4  本年累计回购金额
    buyback_sum           Float     16.4  回购数量
    end_date              String    20    截止日期
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'high_price': 'float', 'low_price': 'float', 'par_value': 'float', 'cumulative_sum_to_ts': 'float', 'share_type': 'str', 'currency_unit': 'float', 'buyback_money': 'float', 'buyback_sum': 'float', 'end_date': 'str'}
    column_name_dict = {'prod_code': '证劵代码', 'high_price': '最高价', 'low_price': '最低价', 'par_value': '面值', 'cumulative_sum_to_ts': '本年累计回购数量占总股本的比例', 'share_type': '份额分类', 'currency_unit': '面值单位', 'buyback_money': '本年累计回购金额', 'buyback_sum': '回购数量', 'end_date': '截止日期'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="hk_market_data", method="hk_buyback", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def chip_cost_data(en_prod_code: str = None, trading_date: str = None, adjust_way: int = None, **kwargs)->Query:
    """
    记录主力成本、散户成本等信息；
    https://udata.hs.net/datas/678/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  ----------------------------------
    en_prod_code  String   是      证券代码  示例：600570.SH
    trading_date  String   是      交易日期
    adjust_way    Integer  是      复权方式  不复权:“0”，前复权:“1”，后复权:”2“
    <返回结果>
    参数名        类型      长度  说明      备注
    ------------  ------  ------  --------  ------
    prod_code     String    20    证券代码
    trading_date  String    20    交易日期
    avg_price     float     16.4  平均成本
    main_price    float     16.4  主力成本
    client_price  float     16.4  散户成本
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'avg_price': 'str', 'main_price': 'str', 'client_price': 'str'}
    column_name_dict = {'prod_code': '证券代码', 'trading_date': '交易日期', 'avg_price': '平均成本', 'main_price': '主力成本', 'client_price': '散户成本'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="technical_indicators", method="chip_cost_data", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def chip_support_price(en_prod_code: str = None, trading_date: str = None, adjust_way: int = None, fields: str = None, **kwargs)->Query:
    """
    记录股票日度支撑位、压力位等信息；
    https://udata.hs.net/datas/679/
    <参数>
    名称          类型     必填    说明      备注
    ------------  -------  ------  --------  -----------------------------------------------
    en_prod_code  String   否      证券代码  默认取值：600570.SH
    trading_date  String   否      交易日期
    adjust_way    Integer  否      复权方式  默认取值为0，不复权:“0”，前复权:“1”，后复权:”2“
    fields        String   否      字段集合  默认返回全部字段；指定多个字段时，用逗号隔开；
    <返回结果>
    参数名            类型      长度  说明      备注
    ----------------  ------  ------  --------  ------
    prod_code         String    20    证券代码
    trading_date      String    20    交易日期
    support_price     float     16.4  支撑位
    resistance_price  float     16.4  压力位
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'support_price': 'str', 'resistance_price': 'str'}
    column_name_dict = {'prod_code': '证券代码', 'trading_date': '交易日期', 'support_price': '支撑位', 'resistance_price': '压力位'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="technical_indicators", method="chip_support_price", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def chip_data(en_prod_code: str = None, trading_date: str = None, adjust_way: str = None, **kwargs)->Query:
    """
    记录股票日度筹码分布数据、筹码比率等信息；
    https://udata.hs.net/datas/680/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------
    en_prod_code  String  是      证券代码  示例：600570.SH
    trading_date  String  是      交易日期
    adjust_way    String  是      复权方式  不复权:“0”，前复权:“1”，后复权:”2“
    <返回结果>
    参数名          类型      长度  说明      备注
    --------------  ------  ------  --------  ------
    prod_code       String    20    证券代码
    trading_date    String    20    交易日期
    chip_data       float     16.4  筹码数据
    chip_profit     float     16.4  盈利筹码
    chip_loss       float     16.4  亏损筹码
    position_ratio  float     16.4  筹码比率
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'chip_data': 'str', 'chip_profit': 'str', 'chip_loss': 'str', 'position_ratio': 'str'}
    column_name_dict = {'prod_code': '证券代码', 'trading_date': '交易日期', 'chip_data': '筹码数据', 'chip_profit': '盈利筹码', 'chip_loss': '亏损筹码', 'position_ratio': '筹码比率'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="technical_indicators", method="chip_data", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def chip_concentration(en_prod_code: str = None, trading_date: str = None, adjust_way: str = None, **kwargs)->Query:
    """
    记录股票筹码集中度、分位数等信息；
    https://udata.hs.net/datas/681/
    <参数>
    名称          类型    必填    说明      备注
    ------------  ------  ------  --------  ----------------------------------
    en_prod_code  String  是      证券代码  示例：600570.SH
    trading_date  String  是      交易日期
    adjust_way    String  是      复权方式  不复权:“0”，前复权:“1”，后复权:”2“
    <返回结果>
    参数名        类型      长度  说明           备注
    ------------  ------  ------  -------------  ------
    prod_code     String    20    证券代码
    trading_date  String    20    交易日期
    price85       float     16.4  85%筹码分位数
    price15       float     16.4  15%筹码分位数
    price5        float     16.4  5%筹码分位数
    price95       float     16.4  95%筹码分位数
    percent70     float     16.4  70%集中度
    percent90     float     16.4  90%集中度
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'prod_code': 'str', 'trading_date': 'str', 'price85': 'str', 'price15': 'str', 'price5': 'str', 'price95': 'str', 'percent70': 'str', 'percent90': 'str'}
    column_name_dict = {'prod_code': '证券代码', 'trading_date': '交易日期', 'price85': '85%筹码分位数', 'price15': '15%筹码分位数', 'price5': '5%筹码分位数', 'price95': '95%筹码分位数', 'percent70': '70%集中度', 'percent90': '90%集中度'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="technical_indicators", method="chip_concentration", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_beta_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票贝塔因子信息；
    https://udata.hs.net/datas/682/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211201
    end_date     String  否      截止日期  示例：20211231
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_beta_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_volatility_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票波动率因子信息；
    https://udata.hs.net/datas/683/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211201
    end_date     String  否      截止日期  示例：20211231
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_volatility_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_solvency_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票偿债因子信息；
    https://udata.hs.net/datas/684/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_solvency_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_growth_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票成长因子信息；
    https://udata.hs.net/datas/685/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_growth_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_momentum_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票动量因子信息；
    https://udata.hs.net/datas/686/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_momentum_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_minute_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录分钟统计因子信息；
    https://udata.hs.net/datas/687/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_minute_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_barra_basic_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票风格基础因子信息；
    https://udata.hs.net/datas/688/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_barra_basic_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_barra_description_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票风格描述因子信息；
    https://udata.hs.net/datas/689/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_barra_description_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_leverage_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票杠杆因子信息；
    https://udata.hs.net/datas/690/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_leverage_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_valueation_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票估值因子信息；
    https://udata.hs.net/datas/691/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_valueation_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_liquidity_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票流动性因子信息；
    https://udata.hs.net/datas/692/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_liquidity_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_sentiment_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票情绪因子信息；
    https://udata.hs.net/datas/693/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_sentiment_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_size_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票市场规模因子信息；
    https://udata.hs.net/datas/694/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_size_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_event_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票事件因子信息；
    https://udata.hs.net/datas/695/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_event_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_cash_flow_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票现金流因子信息；
    https://udata.hs.net/datas/696/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_cash_flow_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_consensus_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票一致预期因子信息；
    https://udata.hs.net/datas/697/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_consensus_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_earning_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票盈利因子信息；
    https://udata.hs.net/datas/698/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_earning_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_operation_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票运营能力因子信息；
    https://udata.hs.net/datas/699/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_operation_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_quality_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票质量因子信息；
    https://udata.hs.net/datas/700/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_quality_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_barra_factor(factor_name: str = None, stock_code: str = None, start_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    记录股票barra因子信息；
    https://udata.hs.net/datas/701/
    <参数>
    名称         类型    必填    说明      备注
    -----------  ------  ------  --------  ---------------
    factor_name  String  否      因子列表
    stock_code   String  否      股票列表  示例：600570.SH
    start_date   String  否      开始日期  示例：20211215
    end_date     String  否      截止日期  示例：20211215
    <返回结果>
    参数名            类型      长度  说明          备注
    ----------------  ------  ------  ------------  ------
    date              String      20  交易日期
    factorSecondType  String      20  因子二级分类
    factorName        String      20  因子名称
    factorType        String      20  因子一级分类
    factorValue       String      20  因子值
    id                int          8  id
    stockCode         String      20  股票代码
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'date': 'str', 'factorSecondType': 'str', 'factorName': 'str', 'factorType': 'str', 'factorValue': 'str', 'id': 'str', 'stockCode': 'str'}
    column_name_dict = {'date': '交易日期', 'factorSecondType': '因子二级分类', 'factorName': '因子名称', 'factorType': '因子一级分类', 'factorValue': '因子值', 'id': 'id', 'stockCode': '股票代码'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_barra_factor", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def get_factor_list(factor_second_type: str = None, **kwargs)->Query:
    """
    记录因子列表信息；
    https://udata.hs.net/datas/702/
    <参数>
    名称                类型    必填    说明      备注
    ------------------  ------  ------  --------  ------
    factor_second_type  String  否      因子列表
    <返回结果>
    参数名              类型      长度  说明          备注
    ------------------  ------  ------  ------------  ------
    factor_name         String      20  因子名称
    factor_chi_name     String      20  因子中文名称
    factor_description  String     200  因子描述
    start_date          String      20  开始日期
    end_date            String      20  截止日期
    factor_type         String      20  因子类型
    factor_second_type  String      20  因子二级分类
    id                  Int         20  id
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'factor_name': 'str', 'factor_chi_name': 'str', 'factor_description': 'str', 'start_date': 'str', 'end_date': 'str', 'factor_type': 'str', 'factor_second_type': 'str', 'id': 'str'}
    column_name_dict = {'factor_name': '因子名称', 'factor_chi_name': '因子中文名称', 'factor_description': '因子描述', 'start_date': '开始日期', 'end_date': '截止日期', 'factor_type': '因子类型', 'factor_second_type': '因子二级分类', 'id': 'id'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="quantization", method="get_factor_list", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def ec_rate_quote(original_currency: str = None, exchange_currency: str = None, begin_date: str = None, end_date: str = None, **kwargs)->Query:
    """
    返回各币种间的汇率行情。
    https://udata.hs.net/datas/677/
    <参数>
    名称               类型    必填    说明      备注
    -----------------  ------  ------  --------  --------
    original_currency  String  否      原始币种
    exchange_currency  String  否      兑换币种
    begin_date         String  否      起始日期  开始日期
    end_date           String  否      截至日期  截至日期
    <返回结果>
    参数名             类型      长度  说明        备注
    -----------------  ------  ------  ----------  -------------------------
    original_currency  String    20    原始币种    汇率 指 兑换币种:基准币种
    exchange_currency  String    20    兑换币种    1 - 是，2 - 否
    trading_date       String    20    交易日期
    exchange_rate      Float     16.4  汇率
    is_trading_day     Float     16.4  是否交易日
    """
    params = locals().copy()
    real_params = {}
    column_type_dict = {'original_currency': 'str', 'exchange_currency': 'str', 'trading_date': 'str', 'exchange_rate': 'float', 'is_trading_day': 'float'}
    column_name_dict = {'original_currency': '原始币种', 'exchange_currency': '兑换币种', 'trading_date': '交易日期', 'exchange_rate': '汇率', 'is_trading_day': '是否交易日'}
    for k, v in params.items():
        if v is not None and k != 'kwargs':
            real_params[k] = v
    for k,v in kwargs.items():
        if v is not None:
            real_params[k] = v
    return Query(module="economic_data", method="ec_rate_quote", params=real_params,return_column_type_dict=column_type_dict,return_column_name_dict=column_name_dict)    
    


def all_api(keyword:str = None):
    all_api_list=[{'module': 'basic_data', 'method': 'stock_list', 'description': '记录A股上市、退市股票交易代码、股票名称、上市状态等信息；', 'url': 'https://udata.hs.net/datas/202/'}, {'module': 'basic_data', 'method': 'trading_calendar', 'description': '交易日信息，包括每个日期是否是交易日，是否周、月最后一个交易日；', 'url': 'https://udata.hs.net/datas/200/'}, {'module': 'basic_data', 'method': 'ipo_list', 'description': '提供已上市新股代码，名称，发行数量、申购和配售等新股信息；', 'url': 'https://udata.hs.net/datas/267/'}, {'module': 'basic_data', 'method': 'company_profile', 'description': '获取公司的基本信息，包含公司名称、注册信息、公司属性、所在城市、联系电话、实际控制人等内容；', 'url': 'https://udata.hs.net/datas/268/'}, {'module': 'basic_data', 'method': 'stock_Info', 'description': '获取股票的基本信息，包含股票交易代码、股票简称、上市时间、上市状态、所属概念板块等信息；', 'url': 'https://udata.hs.net/datas/307/'}, {'module': 'basic_data', 'method': 'leader_profile', 'description': '高管基本信息，高管领导人简介、姓名、学历、职位、年度报酬等（包括科创板）', 'url': 'https://udata.hs.net/datas/322/'}, {'module': 'basic_data', 'method': 'st_stock_list', 'description': '当前ST及*ST的股票代码列表', 'url': 'https://udata.hs.net/datas/323/'}, {'module': 'basic_data', 'method': 'shszhk_stock_list', 'description': '‘沪股通’和‘港股通（沪）’各自的成分股', 'url': 'https://udata.hs.net/datas/331/'}, {'module': 'market_info', 'method': 'stock_quote_daily', 'description': '沪深日行情，包含昨收价、开盘价、最高价、最低价、收盘价、成交量、成交金额等数据', 'url': 'https://udata.hs.net/datas/332/'}, {'module': 'market_info', 'method': 'stock_quote_weekly', 'description': '沪深周行情，包含上周收价、周开盘价、周最高价、周最低价、周收盘价、周成交量、周成交金额等数据', 'url': 'https://udata.hs.net/datas/333/'}, {'module': 'market_info', 'method': 'stock_quote_monthly', 'description': '沪深月行情，包含月前收盘价、月开盘价、月最高价、月最低价、月收盘价、月成交量、月成交金额等数据', 'url': 'https://udata.hs.net/datas/334/'}, {'module': 'market_info', 'method': 'stock_quote_yearly', 'description': '沪深年行情信息，包含年前收盘价、年最高价、年最低价、年日均成交量、年涨跌幅等数据', 'url': 'https://udata.hs.net/datas/335/'}, {'module': 'market_info', 'method': 'money_flow', 'description': '获取单个交易日，沪深股票在不同单笔成交金额区间的累计主买、主卖金额及成交量数据', 'url': 'https://udata.hs.net/datas/336/'}, {'module': 'market_info', 'method': 'suspension_list', 'description': '上市公司股票停牌复牌信息', 'url': 'https://udata.hs.net/datas/337/'}, {'module': 'market_info', 'method': 'shareholder_top10', 'description': '获取公司十大股东相关数据，包括主要股东构成及持股数量比例、持股性质', 'url': 'https://udata.hs.net/datas/338/'}, {'module': 'market_info', 'method': 'float_shareholder_top10', 'description': '获取公司十大流通股东相关数据，包括主要股东构成及持股数量比例、持股性质', 'url': 'https://udata.hs.net/datas/339/'}, {'module': 'market_info', 'method': 'lh_daily', 'description': '每日龙虎榜上榜股票的股票代码、成交金额、净买入额等数据', 'url': 'https://udata.hs.net/datas/340/'}, {'module': 'market_info', 'method': 'lh_stock', 'description': '获取个股龙虎榜详情，包括成交数据、营业部买入和卖出数据等', 'url': 'https://udata.hs.net/datas/341/'}, {'module': 'market_info', 'method': 'stock_quote_minutes', 'description': '取得上市股票列表，用于股票行情查询', 'url': 'https://udata.hs.net/datas/342/'}, {'module': 'market_info', 'method': 'shszhk_capitalflow', 'description': '统计时间范围内沪港通、深港通等资金流向数据，以及领涨领跌股，涨跌幅，资金余额等数据信息。数据每日更新', 'url': 'https://udata.hs.net/datas/343/'}, {'module': 'market_info', 'method': 'shszhk_deal_top10', 'description': '按交易日统计沪港通、深港通等十大成交股列表，成交金额，净买卖额，涨跌幅数据等。包括科创板', 'url': 'https://udata.hs.net/datas/344/'}, {'module': 'market_info', 'method': 'shszhk_distribution', 'description': '展示沪港通、深港通的股票涨跌分布。数据每日更新。包括科创板', 'url': 'https://udata.hs.net/datas/347/'}, {'module': 'market_info', 'method': 'shszhk_change_top10', 'description': '按交易日统计沪港通、深港通等十大涨幅股列表，成交金额，换手率，涨跌幅数据等', 'url': 'https://udata.hs.net/datas/348/'}, {'module': 'market_info', 'method': 'quote_stocklist', 'description': '取得上市股票列表，用于股票行情查询', 'url': 'https://udata.hs.net/datas/558/'}, {'module': 'market_info', 'method': 'stock_quote_daily_list', 'description': '沪深日行情，包含昨收价、开盘价、最高价、最低价、收盘价、成交量、成交金额等数据；', 'url': 'https://udata.hs.net/datas/644/'}, {'module': 'market_info', 'method': 'index_quote', 'description': '沪深指数日行情数据；', 'url': 'https://udata.hs.net/datas/645/'}, {'module': 'market_data', 'method': 'industry_category', 'description': '股票在证监会行业、标普行业、中信行业等多个行业信息；', 'url': 'https://udata.hs.net/datas/305/'}, {'module': 'market_data', 'method': 'index_constituent', 'description': '主要指数的成份构成情况，包括成份证券的市场代码、入选日期等数据', 'url': 'https://udata.hs.net/datas/351/'}, {'module': 'market_data', 'method': 'org_hold', 'description': '根据报告期查询个股机构持仓明细与加仓数据', 'url': 'https://udata.hs.net/datas/352/'}, {'module': 'market_data', 'method': 'holder_num', 'description': '公司股东户数的基本情况，包括股东户数，户均持股数量，户均持股比例等数据', 'url': 'https://udata.hs.net/datas/356/'}, {'module': 'market_data', 'method': 'restricted_schedule', 'description': '收录上市公司因为股权分置改革、定向增发、公开增发等原因所限售的股票的具体解禁时间及相关明细数据', 'url': 'https://udata.hs.net/datas/357/'}, {'module': 'market_data', 'method': 'holder_pledge', 'description': '统计股东股权质押明细，包括质押股东名称、质押股数、占总股本比例等字段，支持同时输入多个股票代码', 'url': 'https://udata.hs.net/datas/358/'}, {'module': 'market_data', 'method': 'holder_increase', 'description': '统计上市公司董事、监事、高级管理人员、股东持有本公司股份变动情况分析，可与高管持股进行合并', 'url': 'https://udata.hs.net/datas/365/'}, {'module': 'market_data', 'method': 'pledge_repo', 'description': '1.本表记录的证券范围包括Ａ股股票，不含基金、债券；质押数量包括场内质押和场外质押，深市不包括场内股', 'url': 'https://udata.hs.net/datas/367/'}, {'module': 'market_data', 'method': 'stock_pledge', 'description': '个股股权质押解押明细数据汇总以及所占总股本比例', 'url': 'https://udata.hs.net/datas/368/'}, {'module': 'market_data', 'method': 'block_trade', 'description': '上市公司最新股本结构变动情况数据，展示大宗交易明细', 'url': 'https://udata.hs.net/datas/369/'}, {'module': 'market_data', 'method': 'margin_trading', 'description': '统计交易所公布的融资融券每日详细数据，包括融券余额、融资余额、融资买入额、融资偿还额、融券偿还额、融券偿还量等指标', 'url': 'https://udata.hs.net/datas/370/'}, {'module': 'market_data', 'method': 'interval_margin_trading', 'description': '统计交易所公布的融资融券某个时间区间的数据，包含区间融资买入额、区间融资偿还额、区间融券偿还量、区间', 'url': 'https://udata.hs.net/datas/371/'}, {'module': 'market_data', 'method': 'margin_trade_detail', 'description': '查询股票代码范围内的融资融券历史交易明细统计，包括融资买入，卖出，偿还等基本详细数据', 'url': 'https://udata.hs.net/datas/372/'}, {'module': 'market_data', 'method': 'margin_trade_total', 'description': '按市场以及融资融券的4钟类型进行交易历史总量统计，包含融资余额统计信息、融资买入额统计信息、融券余额', 'url': 'https://udata.hs.net/datas/373/'}, {'module': 'market_data', 'method': 'stock_dividend', 'description': '统计上市公司历次分红基本信息，包括每股送转，每股转增股本、每股股利等指标；', 'url': 'https://udata.hs.net/datas/374/'}, {'module': 'market_data', 'method': 'stock_additional', 'description': '统计公司历次增发明细信息，包括增发方案内容、进程、实施进度、承销商等信息，支持同时输入多个股票代码或', 'url': 'https://udata.hs.net/datas/375/'}, {'module': 'market_data', 'method': 'stock_additional_all', 'description': '统计股票上市以来增发概况，包括增发总次数、成功次数、失败次数、累计募集资金总额等指标', 'url': 'https://udata.hs.net/datas/376/'}, {'module': 'market_data', 'method': 'stock_allotment', 'description': '统计公司历次配股方案信息，支持同时输入多个股票代码和查询年度', 'url': 'https://udata.hs.net/datas/378/'}, {'module': 'market_data', 'method': 'stock_asforecastabb', 'description': '展示A股公司业务最新预告', 'url': 'https://udata.hs.net/datas/542/'}, {'module': 'market_data', 'method': 'stock_asunderweight', 'description': '展示减持计划列表，按首次计划公告日倒序', 'url': 'https://udata.hs.net/datas/543/'}, {'module': 'market_data', 'method': 'stock_asoverweight', 'description': '展示最新存续期内的增持计划。 超6个月未实现的计划剔除。按首次计划日期倒序', 'url': 'https://udata.hs.net/datas/544/'}, {'module': 'market_data', 'method': 'stock_asrighttransfer', 'description': '展示股权转让交易与交易双方，并显示转让类型。标记第1大股东序号是否变更。按公告日期倒序', 'url': 'https://udata.hs.net/datas/545/'}, {'module': 'market_data', 'method': 'stock_asraising', 'description': '举牌：受让达5% ；1、取12个月内有举牌的股票。 2、取入选股票，最近一个公告及占股比较大的举牌方，计算举牌方累计股票数及累计交易占比，及举牌方举牌日持有股占比', 'url': 'https://udata.hs.net/datas/546/'}, {'module': 'market_data', 'method': 'stock_share_holders', 'description': '展示A股上市公司股本构成，包括总股本、A股（无限售流通A股）与B股。', 'url': 'https://udata.hs.net/datas/646/'}, {'module': 'market_data', 'method': 'stock_special_tradedate', 'description': '证券被特别处理(或撤销)的相关信息，包括暂停上市、恢复上市、终止上市、代办转让、ST、PT、*ST、撤销ST、撤销PT、撤销*ST。 更新频率： 不定时更新', 'url': 'https://udata.hs.net/datas/647/'}, {'module': 'market_data', 'method': 'stock_org_rate', 'description': '提供机构评级以及详情，支持个股，以及全市场，包含科创板数据。', 'url': 'https://udata.hs.net/datas/648/'}, {'module': 'market_data', 'method': 'stock_org_rate_sum', 'description': '个股机构评级统计。', 'url': 'https://udata.hs.net/datas/649/'}, {'module': 'market_data', 'method': 'stock_investor_statistics', 'description': '获取A股机构调研活动统计，统计本期时间范围内机构调研买卖方数量，热度关系。', 'url': 'https://udata.hs.net/datas/650/'}, {'module': 'market_data', 'method': 'stock_investor_detail', 'description': '获取A股机构调研活动明细信息，根据机构调研统计事件ID进行详细明细查询，包含调研单位，人员信息等。', 'url': 'https://udata.hs.net/datas/651/'}, {'module': 'market_data', 'method': 'stock_financial_industry_list', 'description': '获取金融行业的股票代码列表，默认证监会金融业。包括科创板数据。', 'url': 'https://udata.hs.net/datas/652/'}, {'module': 'market_data', 'method': 'stock_industry_compare', 'description': '获取申万行业对比信息，包含股票和行业每股收益情况。', 'url': 'https://udata.hs.net/datas/653/'}, {'module': 'market_data', 'method': 'stock_industry_avg', 'description': '获取申万行业平均信息，行业平均营业收入、平均每股情况以及净利润增长率（行业平均）。', 'url': 'https://udata.hs.net/datas/654/'}, {'module': 'market_data', 'method': 'stock_industry_region_list', 'description': '获取行业与地域列表。', 'url': 'https://udata.hs.net/datas/655/'}, {'module': 'finance_data', 'method': 'schedule_disclosure', 'description': '统计上市公司定期报告的预计披露日期与实际披露日期，支持同时输入多个股票代码或报告期', 'url': 'https://udata.hs.net/datas/379/'}, {'module': 'finance_data', 'method': 'stock_key_indicator', 'description': '获取财务数据的关键指标信息，营业收入，市盈率、市净率、总资产等。（无数值科目不出参）包括科创板', 'url': 'https://udata.hs.net/datas/380/'}, {'module': 'finance_data', 'method': 'accounting_data', 'description': '反映上市公司的主要指标，收录同一公司在报告期末的四种财务报告，即未调整的合并报表、未调整的母公司报表', 'url': 'https://udata.hs.net/datas/382/'}, {'module': 'finance_data', 'method': 'financial_cashflow', 'description': '现金流量表主要是反映出资产负债表中各个项目对现金流量的影响，可用于分析一家机构在短期内有没有足够现金', 'url': 'https://udata.hs.net/datas/383/'}, {'module': 'finance_data', 'method': 'financial_income', 'description': '利润表是反映企业在一定会计期间经营成果的报表，包含1.X营业利润、2.X综合收益总额、3.X营业支出', 'url': 'https://udata.hs.net/datas/384/'}, {'module': 'finance_data', 'method': 'financial_balance', 'description': '资产负债表亦称财务状况表，表示企业在一定日期的财务状况，包含1.X金融类资产、2.X金融类负债、3.', 'url': 'https://udata.hs.net/datas/385/'}, {'module': 'finance_data', 'method': 'financial_gene_qincome', 'description': '1.根据2007年新会计准则制定的一般企业利润表（单季度）模板，收录自公布季报以来公司的单季利润表情', 'url': 'https://udata.hs.net/datas/386/'}, {'module': 'finance_data', 'method': 'financial_bank_qincome', 'description': '1.根据2007年新会计准则制定的商业银行利润表（单季度）模板，收录自公布季报以来公司的单季利润表情', 'url': 'https://udata.hs.net/datas/387/'}, {'module': 'finance_data', 'method': 'financial_secu_qincome', 'description': '1.根据2007年新会计准则制定的证券公司利润表（单季度）模板，收录自公布季报以来公司的单季利润表情', 'url': 'https://udata.hs.net/datas/388/'}, {'module': 'finance_data', 'method': 'financial_insu_qincome', 'description': '1.根据2007年新会计准则制定的保险公司利润表（单季度）模板，收录自公布季报以来公司的单季利润表情', 'url': 'https://udata.hs.net/datas/389/'}, {'module': 'finance_data', 'method': 'financial_gene_qcashflow', 'description': '1.根据2007年新会计准则制定的一般企业现金流量表（单季度）模板，收录自公布季报以来公司的单季现金', 'url': 'https://udata.hs.net/datas/390/'}, {'module': 'finance_data', 'method': 'financial_bank_qcashflow', 'description': '1.根据2007年新会计准则制定的商业银行现金流量表（单季度）模板，收录自公布季报以来公司的单季现金', 'url': 'https://udata.hs.net/datas/391/'}, {'module': 'finance_data', 'method': 'financial_secu_qcashflow', 'description': '1.根据2007年新会计准则制定的证券公司现金流量表（单季度）模板，收录公布季报以来公司的单季现金流', 'url': 'https://udata.hs.net/datas/392/'}, {'module': 'finance_data', 'method': 'financial_insu_qcashflow', 'description': '根据2007年新会计准则制定的保险公司现金流量表（单季度）模板，收录自公布季报以来公司的单季现金流量', 'url': 'https://udata.hs.net/datas/393/'}, {'module': 'finance_data', 'method': 'performance_forecast', 'description': '统计上市公司对未来报告期本公司业绩的预计情况，包括业绩预计类型、预计内容、具体预计值等，并收录了实际', 'url': 'https://udata.hs.net/datas/394/'}, {'module': 'finance_data', 'method': 'performance_letters', 'description': '收录上市公司在业绩快报中披露的主要财务数据和指标', 'url': 'https://udata.hs.net/datas/395/'}, {'module': 'finance_data', 'method': 'performance_letters_q', 'description': '通过上市公司在业绩快报中披露的主要财务数据和指标，计算单季度主要财务指标', 'url': 'https://udata.hs.net/datas/396/'}, {'module': 'finance_data', 'method': 'main_composition', 'description': '按报告期统计上市公司主营业务构成情况，支持同时输入多个股票代码或报告期', 'url': 'https://udata.hs.net/datas/397/'}, {'module': 'finance_data', 'method': 'trading_parties', 'description': '统计公司向前5名供应商的采购情况及向前5名客户的销售情况等，支持同时输入多个股票代码或报告期', 'url': 'https://udata.hs.net/datas/398/'}, {'module': 'finance_data', 'method': 'audit_opinion', 'description': '中介机构对公司季度、半年度、年度经营情况的评价，包括公司招股以来的历次纪录，支持同时输入多个股票代码', 'url': 'https://udata.hs.net/datas/399/'}, {'module': 'finance_data', 'method': 'per_share_index', 'description': '根据报告期公布的财务科目数据衍生而来的每股指标，若某个报告期的数据有多次调整，则该表展示最新合并调整', 'url': 'https://udata.hs.net/datas/400/'}, {'module': 'finance_data', 'method': 'profitability', 'description': '根据报告期公布的财务科目数据衍生而来盈利能力相关指标，若某个报告期的数据有多次调整，则该表展示最新合', 'url': 'https://udata.hs.net/datas/401/'}, {'module': 'finance_data', 'method': 'growth_capacity', 'description': '根据报告期公布的财务科目数据衍生出的衡量成长能力的相关指标，主要从同比角度分析，展示同比增长率。若某', 'url': 'https://udata.hs.net/datas/402/'}, {'module': 'finance_data', 'method': 'du_pont_analysis', 'description': '根据报告期公布的财务科目数据，利用杜邦分析方法衍生衡量公司主要财务分析指标，若某个报告期的数据有多次', 'url': 'https://udata.hs.net/datas/403/'}, {'module': 'finance_data', 'method': 'deri_fin_indicators', 'description': '统计由上市公司的主要会计科目（合并报表）衍生出来的数据，三大财务报表中任意报表在某报告期的数据经历调', 'url': 'https://udata.hs.net/datas/404/'}, {'module': 'finance_data', 'method': 'q_financial_indicator', 'description': '本表收录自公布公司的单季主要财务指标，第一、三季度直接取公布值；第二季度数据＝半年度数据－第一季度数', 'url': 'https://udata.hs.net/datas/405/'}, {'module': 'finance_data', 'method': 'valuation_info', 'description': '利用定期报告中披露的财务指标对上市公司做估值分析，主要包括股息率、市净率、市销率、市现率等额指标，支', 'url': 'https://udata.hs.net/datas/406/'}, {'module': 'finance_data', 'method': 'corporation_value', 'description': '统计上市公司A股市值、B股市值、企业价值等指标，支持同时输入多个股票代码', 'url': 'https://udata.hs.net/datas/407/'}, {'module': 'finance_data', 'method': 'stock_main_composition', 'description': '获取主营构成明细数据，主营收入，毛利和同比情况。', 'url': 'https://udata.hs.net/datas/659/'}, {'module': 'finance_data', 'method': 'stock_main_business_total', 'description': '提供A股公司所属行业，主营收入金额，业务收入、成本、利润占比，毛利率等。', 'url': 'https://udata.hs.net/datas/660/'}, {'module': 'finance_data', 'method': 'stock_main_business_indurstry', 'description': '提供证券公司所属行业，主营收入金额，业务收入、成本、利润占比，毛利率等。', 'url': 'https://udata.hs.net/datas/661/'}, {'module': 'star_market', 'method': 'star_ipodeclare', 'description': '上海证券交易所公布的首次公开发行科创板A股申报企业基本信息，包括申报企业名称、所属板块、证监会所属行业代码以及涉及到的保荐机构、会计师事务所、律师事务所等内容', 'url': 'https://udata.hs.net/datas/547/'}, {'module': 'star_market', 'method': 'star_companyprofile', 'description': '科创板公司的基本情况，包括：联系方式、注册信息、背景资料等内容', 'url': 'https://udata.hs.net/datas/548/'}, {'module': 'neeq', 'method': 'neeq_basic', 'description': '获取股票的基本信息，包含股票交易代码、股票简称、上市时间、上市状态、上市板块等信息，可以同时输入多个股票代码', 'url': 'https://udata.hs.net/datas/551/'}, {'module': 'neeq', 'method': 'neeq_company', 'description': '获取公司的基本信息，包含公司名称、注册信息、公司简介、公司属性、经营范围、主营业务、所在城市、联系电话等内容，可以同时输入多个股票代码', 'url': 'https://udata.hs.net/datas/552/'}, {'module': 'neeq', 'method': 'neeq_leader', 'description': '统计上市公司历任管理层任职信息，包括董事长、总经理、财务总监、监事会秘书等高管，支持同时输入多个股票代码', 'url': 'https://udata.hs.net/datas/553/'}, {'module': 'neeq', 'method': 'neeq_leader_num', 'description': '统计上市公司管理层成员数量，包括董事会、监事会、高级管理人员的成员数量，支持同时输入多个股票代码和截止日期', 'url': 'https://udata.hs.net/datas/554/'}, {'module': 'neeq', 'method': 'neeq_industry', 'description': '输入股票代码，可以获得股票在证监会行业、国民经济行业、三板管理型行业、三板投资型行业等多个不同行业下对应的行业信息，支持同时输入多个股票代码查询', 'url': 'https://udata.hs.net/datas/555/'}, {'module': 'neeq', 'method': 'neeq_perform_fore', 'description': '统计挂牌公司对未来报告期本公司业绩的预计情况，包括业绩预计类型、预计内容、具体预计值等信息。可支持同时输入多个证券代码和报告期。', 'url': 'https://udata.hs.net/datas/662/'}, {'module': 'neeq', 'method': 'neeq_dupont_analysis', 'description': '根据报告期公布的财务科目数据，利用杜邦分析方法衍生衡量公司主要财务分析指标，若某个报告期的数据有多次调整，则该表展示最新合并调整数据；若某报告期暂未披露调整后数据，则展示调整前的合并数据，支持同时输入多个股票代码和报告期。', 'url': 'https://udata.hs.net/datas/663/'}, {'module': 'neeq', 'method': 'neeq_share_stru', 'description': '收录上市公司股本结构历次变动明细指标，可同时输入多个股票代码查询，返回小于等于查询日期的最新一条记录。可支持同时输入多个证券代码和截止日期。', 'url': 'https://udata.hs.net/datas/664/'}, {'module': 'neeq', 'method': 'neeq_per_share_index', 'description': '根据报告期公布的财务科目数据衍生而来的每股指标，若某个报告期的数据有多次调整，则该表展示最新合并调整数据；若某报告期暂未披露调整后数据，则展示调整前的合并数据，支持同时输入多个股票代码和报告期。', 'url': 'https://udata.hs.net/datas/665/'}, {'module': 'neeq', 'method': 'neeq_issue_count', 'description': '统计公司发行信息,包括预案次数,实施次数及金额数量统计等信息，可以同时输入多个股票代码和统计区间。', 'url': 'https://udata.hs.net/datas/666/'}, {'module': 'neeq', 'method': 'neeq_holder_num', 'description': '统计公司股东户数的基本情况，包括股东户数，户均持股数量，户均持股比例等信息，可以同时输入多个股票代码和报告期。', 'url': 'https://udata.hs.net/datas/667/'}, {'module': 'neeq', 'method': 'neeq_holder_info', 'description': '统计上市公司十大股东持股信息，包括十大股东名称、持股数量、占比、所持股本性质等指标，支持同时输入多个股票代码和截止日期。', 'url': 'https://udata.hs.net/datas/668/'}, {'module': 'fund_basic_data', 'method': 'fund_list', 'description': '提供所有的分级基金，场内和场外基金列表', 'url': 'https://udata.hs.net/datas/409/'}, {'module': 'fund_basic_data', 'method': 'fund_manager_company', 'description': '提供查询基金的基金经理信息，返回基金经理的名字、任职日、背景等', 'url': 'https://udata.hs.net/datas/410/'}, {'module': 'fund_basic_data', 'method': 'fund_manager', 'description': '提供查询基金的基金经理信息，返回基金经理的名字、任职日、背景等', 'url': 'https://udata.hs.net/datas/411/'}, {'module': 'fund_basic_data', 'method': 'fund_profile', 'description': '基金管理人、托管人、投资目标等基金概况数据；', 'url': 'https://udata.hs.net/datas/412/'}, {'module': 'fund_basic_data', 'method': 'fund_institutions', 'description': '收录基金各类相关机构', 'url': 'https://udata.hs.net/datas/413/'}, {'module': 'fund_basic_data', 'method': 'fund_etf', 'description': '记录ETF基金基本资料、上市日期、最小申赎份额、申购份额上限等信息', 'url': 'https://udata.hs.net/datas/414/'}, {'module': 'fund_basic_data', 'method': 'fund_size', 'description': '记录基金份额和基金净值等统计情况', 'url': 'https://udata.hs.net/datas/415/'}, {'module': 'fund_basic_data', 'method': 'fund_charge_rate', 'description': '记录基金各种收费比率及标准', 'url': 'https://udata.hs.net/datas/416/'}, {'module': 'fund_basic_data', 'method': 'fund_index', 'description': '基金上市相关信息，包括基金上市日期、基金上市地点、等资料', 'url': 'https://udata.hs.net/datas/417/'}, {'module': 'fund_basic_data', 'method': 'fund_type', 'description': '获取基金性质、运作方式、投资类型、投资定位等信息', 'url': 'https://udata.hs.net/datas/418/'}, {'module': 'fund_basic_data', 'method': 'fund_style', 'description': '输入基金代码、风格类别代码、截止日期，获取该日期下基金所属的风格', 'url': 'https://udata.hs.net/datas/425/'}, {'module': 'fund_basic_data', 'method': 'fund_holder_public', 'description': '基金经理、持有人等信息', 'url': 'https://udata.hs.net/datas/556/'}, {'module': 'fund_basic_condition', 'method': 'fund_quote_daily_history', 'description': '基金的历史日行情，及行情表现数据', 'url': 'https://udata.hs.net/datas/426/'}, {'module': 'fund_basic_condition', 'method': 'fund_quote_daily', 'description': '基金的最新日行情，及行情表现数据', 'url': 'https://udata.hs.net/datas/427/'}, {'module': 'fund_basic_condition', 'method': 'fund_quote_weekly', 'description': '基金的最新周行情，及行情表现数据', 'url': 'https://udata.hs.net/datas/433/'}, {'module': 'fund_basic_condition', 'method': 'fund_quote_monthly', 'description': '基金的最新月行情，及行情表现数据', 'url': 'https://udata.hs.net/datas/428/'}, {'module': 'fund_basic_condition', 'method': 'fund_quote_yearly', 'description': '基金的最新年行情，及行情表现数据', 'url': 'https://udata.hs.net/datas/429/'}, {'module': 'fund_basic_condition', 'method': 'fund_net_value', 'description': '记录基金每日单位基金净值，基金每周单位基金净值等资料', 'url': 'https://udata.hs.net/datas/434/'}, {'module': 'fund_basic_condition', 'method': 'moneyfund_performance', 'description': '记录了货币市场基金收益，包括 每万份基金单位日收益、最近7日折算年收益率等信息', 'url': 'https://udata.hs.net/datas/435/'}, {'module': 'fund_basic_condition', 'method': 'fund_stock_detail', 'description': '基金年报、半年报公布股票组合明细信息', 'url': 'https://udata.hs.net/datas/436/'}, {'module': 'fund_basic_condition', 'method': 'fund_asset', 'description': '基金资产的大类配置情况，包括股票、债券、银行存款和清算备付金、其他资产、买入返售证券、卖出回购证券、', 'url': 'https://udata.hs.net/datas/444/'}, {'module': 'fund_basic_condition', 'method': 'fund_holder', 'description': '基金披露的基金场内持有人户数、持有人结构信息', 'url': 'https://udata.hs.net/datas/445/'}, {'module': 'fund_basic_condition', 'method': 'fund_rangerise', 'description': '该接口根据基金类别 返回基金区间涨跌幅信息', 'url': 'https://udata.hs.net/datas/446/'}, {'module': 'fund_basic_condition', 'method': 'fund_rank', 'description': '该接口提供基金同类排名信息', 'url': 'https://udata.hs.net/datas/447/'}, {'module': 'fund_basic_condition', 'method': 'fund_style_code', 'description': '通过输入风格类别代码或风格名称关键字匹配获取风格代码。', 'url': 'https://udata.hs.net/datas/669/'}, {'module': 'fund_basic_condition', 'method': 'fund_style_info', 'description': '输入风格代码获取风格的基本信息，包括风格名称、规则说明、划分依据。', 'url': 'https://udata.hs.net/datas/670/'}, {'module': 'fund_basic_condition', 'method': 'fund_index_quote', 'description': '输入风格指数代码、交易日期，获取指定日期下风格指数的行情信息。', 'url': 'https://udata.hs.net/datas/671/'}, {'module': 'fund_basic_condition', 'method': 'fund_style_comp', 'description': '输入风格代码与日期，获取指定时间点该风格下的成分基金。', 'url': 'https://udata.hs.net/datas/672/'}, {'module': 'fund_basic_condition', 'method': 'fund_index_gr', 'description': '获取指定日期下风格指数的收益率信息。', 'url': 'https://udata.hs.net/datas/673/'}, {'module': 'futures_options', 'method': 'fut_basic', 'description': '获取期权品种名称、生效日期、履约方式、交割方式、申报单位等相关信息', 'url': 'https://udata.hs.net/datas/456/'}, {'module': 'futures_options', 'method': 'fut_quote_minute', 'description': '', 'url': 'https://udata.hs.net/datas/457/'}, {'module': 'futures_options', 'method': 'fut_list', 'description': '取得上海国际能源交易中心、上海期货交易所、郑州商品交易所、大连商品交易所、中国金融期货交易所，5大期货交易所期货代码列表，用于期货行情查询', 'url': 'https://udata.hs.net/datas/458/'}, {'module': 'futures_options', 'method': 'fut_count_rank', 'description': '期货合约多空占比总量统计排名，按交易日纬度，合约代码contract_code取自接口fut_contract，仅支持沪深300（IF开头）,上证50（IH开头），中证500（IC开头）的合约代码', 'url': 'https://udata.hs.net/datas/460/'}, {'module': 'futures_options', 'method': 'fut_holding_lh', 'description': '提供正在交易的期货合约龙虎榜详情，统计期货会员排名的持仓信息，包含多空增减值，指标数量，其中合约代码contract_code取自期货合约详情接口fut_contract', 'url': 'https://udata.hs.net/datas/468/'}, {'module': 'futures_options', 'method': 'fut_contract_type', 'description': '收录国内商品期货品种和金融期货品种的标准合约基本要素信息', 'url': 'https://udata.hs.net/datas/473/'}, {'module': 'bond_data', 'method': 'con_price', 'description': '该接口展示了可转债转股价格变动情况，包含价格变动类型、日期、转股价格、比例等情况', 'url': 'https://udata.hs.net/datas/480/'}, {'module': 'bond_data', 'method': 'con_time', 'description': '该接口展示了可转债转股区间与暂停转股区间，包含对应日期区间、转股价格、比例等情况', 'url': 'https://udata.hs.net/datas/489/'}, {'module': 'bond_data', 'method': 'con_detail', 'description': '获取可转债详细信息', 'url': 'https://udata.hs.net/datas/490/'}, {'module': 'bond_data', 'method': 'con_calender', 'description': '提供申购，待上市，今日可申购，已上市 等状态', 'url': 'https://udata.hs.net/datas/493/'}, {'module': 'bond_data', 'method': 'con_quote', 'description': '返回可转换债券(含分离交易可转债、可交换公司债)的日行情信息。', 'url': 'https://udata.hs.net/datas/674/'}, {'module': 'hk_basic_data', 'method': 'hk_list', 'description': '记录港股上市、退市股票交易代码、股票名称等信息，以列表形式展示', 'url': 'https://udata.hs.net/datas/496/'}, {'module': 'hk_basic_data', 'method': 'hk_ipo', 'description': '获取港股首发IPO的数据，如首发上市日期、每股发行价、发行量 、新股发行数量、股东售股数量 、募集资金总额 、募集资金净额等', 'url': 'https://udata.hs.net/datas/497/'}, {'module': 'hk_basic_data', 'method': 'hk_company', 'description': '获取港股上市公司的基础信息，包括名称、成立日期、注册地点、注册资本、公司业务、所属行业分类、主席、公司秘书、联系方式等信息', 'url': 'https://udata.hs.net/datas/499/'}, {'module': 'hk_basic_data', 'method': 'hk_secu', 'description': '获取港股的基本信息，包含股票交易代码、股票简称、上市时间、上市状态、上市板块、所属概念板块及可能有的同公司A股、B股信息等信息', 'url': 'https://udata.hs.net/datas/500/'}, {'module': 'hk_basic_data', 'method': 'hk_leader', 'description': '获取上市公司管理层任职信息，包括董事长、总经理、副董事长、财务总监、监事会主席等高管；', 'url': 'https://udata.hs.net/datas/569/'}, {'module': 'hk_quotation_data', 'method': 'hk_daily_quote', 'description': '获取港股日行情的指标，比如前收盘价、开盘价、最高价、最低价、收盘价、均价、涨跌、涨跌幅等指标', 'url': 'https://udata.hs.net/datas/501/'}, {'module': 'hk_quotation_data', 'method': 'hk_weekly_quote', 'description': '获取港股周行情中的指标，比如周前收盘价、周开盘价、周最高价、周最低价、周收盘价、周均价、周涨跌、周涨跌幅等指标', 'url': 'https://udata.hs.net/datas/502/'}, {'module': 'hk_quotation_data', 'method': 'hk_monthly_quote', 'description': '获取港股月行情中的指标，比如月前收盘价、月开盘价、月最高价、月最低价、月收盘价、月均价、月涨跌、月涨跌幅等指标', 'url': 'https://udata.hs.net/datas/503/'}, {'module': 'hk_quotation_data', 'method': 'hk_yearly_quote', 'description': '获取港股年行情中的指标，比如年前收盘价、年开盘价、年最高价、年最低价、年收盘价、年均价、年涨跌、年涨跌幅等指标', 'url': 'https://udata.hs.net/datas/504/'}, {'module': 'hk_quotation_data', 'method': 'hk_section_quote', 'description': '获取港股区间行情指标，比如区间前收盘价、区间开盘价、区间最高价、区间最低价 、区间收盘价、区间最高收盘价 、区间最低收盘价、区间均价等', 'url': 'https://udata.hs.net/datas/506/'}, {'module': 'hk_quotation_data', 'method': 'hk_daily_quote_short', 'description': '获取港股日行情中的卖空指标，比如货币、成交额、成交量等', 'url': 'https://udata.hs.net/datas/507/'}, {'module': 'hk_quotation_data', 'method': 'hk_weekly_quote_short', 'description': '获取港股周行情中的卖空指标，比如货币、周成交额、周成交量等', 'url': 'https://udata.hs.net/datas/508/'}, {'module': 'hk_quotation_data', 'method': 'hk_monthly_quote_short', 'description': '获取港股月行情中的卖空指标，比如货币、月成交额、月成交量等', 'url': 'https://udata.hs.net/datas/510/'}, {'module': 'hk_quotation_data', 'method': 'hk_yearly_quote_short', 'description': '获取港股年行情中的卖空指标，比如货币、年成交额、年成交量等', 'url': 'https://udata.hs.net/datas/511/'}, {'module': 'hk_quotation_data', 'method': 'hk_section_quote_short', 'description': '获取港股区间行情中的卖空指标，比如货币、区间成交量、区间成交额', 'url': 'https://udata.hs.net/datas/512/'}, {'module': 'hk_quotation_data', 'method': 'hk_minutes_hkscclist', 'description': '取得港股通(沪)与港股通(深)代码列表，用于港股通行情查询', 'url': 'https://udata.hs.net/datas/513/'}, {'module': 'hk_quotation_data', 'method': 'hk_minutes_hkscc', 'description': '港股通盘后1分钟切片；', 'url': 'https://udata.hs.net/datas/514/'}, {'module': 'hk_market_data', 'method': 'hk_share_stru', 'description': '获取港股的具体股本结构信息', 'url': 'https://udata.hs.net/datas/515/'}, {'module': 'hk_market_data', 'method': 'hk_exgindustry', 'description': '港股公司行业划分目前共4个，包括：8-GICS行业分类，24-申万行业分类2014版（目前分类范围为陆港通公司），22-证监会行业分类2012版（目前分类范围为陆港通公司），100-恒生行业分类（港交所）', 'url': 'https://udata.hs.net/datas/516/'}, {'module': 'hk_market_data', 'method': 'hk_cap_structure', 'description': '获取港股资本结构的指标，如资产负债率、长期资本负债率、权益乘数、流动资产/总资产、非流动资产/总资产、资本固定化比率等', 'url': 'https://udata.hs.net/datas/517/'}, {'module': 'hk_market_data', 'method': 'hk_profit_ability', 'description': '获取港股上市公司的盈利能力的指标，如净资产收益率、总资产报酬率、销售毛利率、净利润/营业总收入、销售费用/营业总收入、销售毛利率等', 'url': 'https://udata.hs.net/datas/518/'}, {'module': 'hk_market_data', 'method': 'hk_per_share_index', 'description': '获取港股上市公司的财务分析指标，包括每股收益、每股净资产、每股经营活动产生的现金流、每股营业总收入、每股息税前利润、每股现金流量净额等', 'url': 'https://udata.hs.net/datas/519/'}, {'module': 'hk_market_data', 'method': 'hk_solvency', 'description': '获取港股偿债能力的指标，如流动比率、速动比率、货币资金/流动负债、产权比率、负债净值比率、已获利息倍数、长期负债比率等', 'url': 'https://udata.hs.net/datas/520/'}, {'module': 'hk_market_data', 'method': 'hk_mainincomestru', 'description': '港股上市公司主营构成情况，包含按产品、按地区、按业务等四种分类方式下主营业务的资产、负债、开支、收入等', 'url': 'https://udata.hs.net/datas/523/'}, {'module': 'hk_market_data', 'method': 'hk_dividend', 'description': '获取港股分红的数据，如首次公告日 、事件进程 、方案说明 、每股股息 、每股特别股息(1派X元) 、每股送红股 、每股送红利认股证、每股派实物、货币种类 等', 'url': 'https://udata.hs.net/datas/524/'}, {'module': 'hk_market_data', 'method': 'hk_buyback', 'description': '获取港股回购的数据，如最新公告日期、回购股份类别、面值单位 、面值 、最高价 、最低价 、本年累计回购金额 、本年累计回购数量 等', 'url': 'https://udata.hs.net/datas/557/'}, {'module': 'technical_indicators', 'method': 'chip_cost_data', 'description': '记录主力成本、散户成本等信息；', 'url': 'https://udata.hs.net/datas/678/'}, {'module': 'technical_indicators', 'method': 'chip_support_price', 'description': '记录股票日度支撑位、压力位等信息；', 'url': 'https://udata.hs.net/datas/679/'}, {'module': 'technical_indicators', 'method': 'chip_data', 'description': '记录股票日度筹码分布数据、筹码比率等信息；', 'url': 'https://udata.hs.net/datas/680/'}, {'module': 'technical_indicators', 'method': 'chip_concentration', 'description': '记录股票筹码集中度、分位数等信息；', 'url': 'https://udata.hs.net/datas/681/'}, {'module': 'quantization', 'method': 'get_beta_factor', 'description': '记录股票贝塔因子信息；', 'url': 'https://udata.hs.net/datas/682/'}, {'module': 'quantization', 'method': 'get_volatility_factor', 'description': '记录股票波动率因子信息；', 'url': 'https://udata.hs.net/datas/683/'}, {'module': 'quantization', 'method': 'get_solvency_factor', 'description': '记录股票偿债因子信息；', 'url': 'https://udata.hs.net/datas/684/'}, {'module': 'quantization', 'method': 'get_growth_factor', 'description': '记录股票成长因子信息；', 'url': 'https://udata.hs.net/datas/685/'}, {'module': 'quantization', 'method': 'get_momentum_factor', 'description': '记录股票动量因子信息；', 'url': 'https://udata.hs.net/datas/686/'}, {'module': 'quantization', 'method': 'get_minute_factor', 'description': '记录分钟统计因子信息；', 'url': 'https://udata.hs.net/datas/687/'}, {'module': 'quantization', 'method': 'get_barra_basic_factor', 'description': '记录股票风格基础因子信息；', 'url': 'https://udata.hs.net/datas/688/'}, {'module': 'quantization', 'method': 'get_barra_description_factor', 'description': '记录股票风格描述因子信息；', 'url': 'https://udata.hs.net/datas/689/'}, {'module': 'quantization', 'method': 'get_leverage_factor', 'description': '记录股票杠杆因子信息；', 'url': 'https://udata.hs.net/datas/690/'}, {'module': 'quantization', 'method': 'get_valueation_factor', 'description': '记录股票估值因子信息；', 'url': 'https://udata.hs.net/datas/691/'}, {'module': 'quantization', 'method': 'get_liquidity_factor', 'description': '记录股票流动性因子信息；', 'url': 'https://udata.hs.net/datas/692/'}, {'module': 'quantization', 'method': 'get_sentiment_factor', 'description': '记录股票情绪因子信息；', 'url': 'https://udata.hs.net/datas/693/'}, {'module': 'quantization', 'method': 'get_size_factor', 'description': '记录股票市场规模因子信息；', 'url': 'https://udata.hs.net/datas/694/'}, {'module': 'quantization', 'method': 'get_event_factor', 'description': '记录股票事件因子信息；', 'url': 'https://udata.hs.net/datas/695/'}, {'module': 'quantization', 'method': 'get_cash_flow_factor', 'description': '记录股票现金流因子信息；', 'url': 'https://udata.hs.net/datas/696/'}, {'module': 'quantization', 'method': 'get_consensus_factor', 'description': '记录股票一致预期因子信息；', 'url': 'https://udata.hs.net/datas/697/'}, {'module': 'quantization', 'method': 'get_earning_factor', 'description': '记录股票盈利因子信息；', 'url': 'https://udata.hs.net/datas/698/'}, {'module': 'quantization', 'method': 'get_operation_factor', 'description': '记录股票运营能力因子信息；', 'url': 'https://udata.hs.net/datas/699/'}, {'module': 'quantization', 'method': 'get_quality_factor', 'description': '记录股票质量因子信息；', 'url': 'https://udata.hs.net/datas/700/'}, {'module': 'quantization', 'method': 'get_barra_factor', 'description': '记录股票barra因子信息；', 'url': 'https://udata.hs.net/datas/701/'}, {'module': 'quantization', 'method': 'get_factor_list', 'description': '记录因子列表信息；', 'url': 'https://udata.hs.net/datas/702/'}, {'module': 'economic_data', 'method': 'ec_rate_quote', 'description': '返回各币种间的汇率行情。', 'url': 'https://udata.hs.net/datas/677/'}]
    df=pd.DataFrame(all_api_list)
    if keyword is None:
        return df
    else:
        return df[(df['method'].str.contains(keyword))|(df['description'].str.contains(keyword))]        
    

__all__ = ['stock_list', 'trading_calendar', 'ipo_list', 'company_profile', 'stock_Info', 'leader_profile', 'st_stock_list', 'shszhk_stock_list', 'stock_quote_daily', 'stock_quote_weekly', 'stock_quote_monthly', 'stock_quote_yearly', 'money_flow', 'suspension_list', 'shareholder_top10', 'float_shareholder_top10', 'lh_daily', 'lh_stock', 'stock_quote_minutes', 'shszhk_capitalflow', 'shszhk_deal_top10', 'shszhk_distribution', 'shszhk_change_top10', 'quote_stocklist', 'stock_quote_daily_list', 'index_quote', 'industry_category', 'index_constituent', 'org_hold', 'holder_num', 'restricted_schedule', 'holder_pledge', 'holder_increase', 'pledge_repo', 'stock_pledge', 'block_trade', 'margin_trading', 'interval_margin_trading', 'margin_trade_detail', 'margin_trade_total', 'stock_dividend', 'stock_additional', 'stock_additional_all', 'stock_allotment', 'stock_asforecastabb', 'stock_asunderweight', 'stock_asoverweight', 'stock_asrighttransfer', 'stock_asraising', 'stock_share_holders', 'stock_special_tradedate', 'stock_org_rate', 'stock_org_rate_sum', 'stock_investor_statistics', 'stock_investor_detail', 'stock_financial_industry_list', 'stock_industry_compare', 'stock_industry_avg', 'stock_industry_region_list', 'schedule_disclosure', 'stock_key_indicator', 'accounting_data', 'financial_cashflow', 'financial_income', 'financial_balance', 'financial_gene_qincome', 'financial_bank_qincome', 'financial_secu_qincome', 'financial_insu_qincome', 'financial_gene_qcashflow', 'financial_bank_qcashflow', 'financial_secu_qcashflow', 'financial_insu_qcashflow', 'performance_forecast', 'performance_letters', 'performance_letters_q', 'main_composition', 'trading_parties', 'audit_opinion', 'per_share_index', 'profitability', 'growth_capacity', 'du_pont_analysis', 'deri_fin_indicators', 'q_financial_indicator', 'valuation_info', 'corporation_value', 'stock_main_composition', 'stock_main_business_total', 'stock_main_business_indurstry', 'star_ipodeclare', 'star_companyprofile', 'neeq_basic', 'neeq_company', 'neeq_leader', 'neeq_leader_num', 'neeq_industry', 'neeq_perform_fore', 'neeq_dupont_analysis', 'neeq_share_stru', 'neeq_per_share_index', 'neeq_issue_count', 'neeq_holder_num', 'neeq_holder_info', 'fund_list', 'fund_manager_company', 'fund_manager', 'fund_profile', 'fund_institutions', 'fund_etf', 'fund_size', 'fund_charge_rate', 'fund_index', 'fund_type', 'fund_style', 'fund_holder_public', 'fund_quote_daily_history', 'fund_quote_daily', 'fund_quote_weekly', 'fund_quote_monthly', 'fund_quote_yearly', 'fund_net_value', 'moneyfund_performance', 'fund_stock_detail', 'fund_asset', 'fund_holder', 'fund_rangerise', 'fund_rank', 'fund_style_code', 'fund_style_info', 'fund_index_quote', 'fund_style_comp', 'fund_index_gr', 'fut_basic', 'fut_quote_minute', 'fut_list', 'fut_count_rank', 'fut_holding_lh', 'fut_contract_type', 'con_price', 'con_time', 'con_detail', 'con_calender', 'con_quote', 'hk_list', 'hk_ipo', 'hk_company', 'hk_secu', 'hk_leader', 'hk_daily_quote', 'hk_weekly_quote', 'hk_monthly_quote', 'hk_yearly_quote', 'hk_section_quote', 'hk_daily_quote_short', 'hk_weekly_quote_short', 'hk_monthly_quote_short', 'hk_yearly_quote_short', 'hk_section_quote_short', 'hk_minutes_hkscclist', 'hk_minutes_hkscc', 'hk_share_stru', 'hk_exgindustry', 'hk_cap_structure', 'hk_profit_ability', 'hk_per_share_index', 'hk_solvency', 'hk_mainincomestru', 'hk_dividend', 'hk_buyback', 'chip_cost_data', 'chip_support_price', 'chip_data', 'chip_concentration', 'get_beta_factor', 'get_volatility_factor', 'get_solvency_factor', 'get_growth_factor', 'get_momentum_factor', 'get_minute_factor', 'get_barra_basic_factor', 'get_barra_description_factor', 'get_leverage_factor', 'get_valueation_factor', 'get_liquidity_factor', 'get_sentiment_factor', 'get_size_factor', 'get_event_factor', 'get_cash_flow_factor', 'get_consensus_factor', 'get_earning_factor', 'get_operation_factor', 'get_quality_factor', 'get_barra_factor', 'get_factor_list', 'ec_rate_quote']
